从Java 10中删除的API
在博客文章“ JDK 10 Release Candidate Phase ”中,我研究了JDK 10可能包含的十二個(gè)新功能。 在本文中,我介紹了一些可能會(huì)在JDK 10中刪除的API,并探討了一些在JDK 10中建議棄用的API。本文中的信息基于當(dāng)前版本(2018/1 / “ Java SE 10(18.3)(JSR 383)建議的最終草案規(guī)范 – DRAFT ”的31 19:49 -0800 [a337d4f5aa79]),并且由于此源文檔是草案,因此本信息可能會(huì)發(fā)生更改。
JDK 9 增強(qiáng)的棄用功能( JEP 277 )允許使用@Deprecated的新可選的forRemoval()元素設(shè)置為true來(lái)注釋多個(gè)JDK API,這表明“注釋的API”已指定在將來(lái)的版本中刪除。 ” 下列API已應(yīng)用此已棄用的增強(qiáng)功能,并在JDK 9中標(biāo)記為“在將來(lái)的版本中刪除”,現(xiàn)在JDK 10似乎是將其刪除的版本。
- “刪除最終不贊成使用的方法Runtime.getLocalized {Input,Output} Stream”( JDK-8193162 )
- java.lang.Runtime.getLocalizedInputStream(java.io.InputStream) (從JDK 1.1開(kāi)始不推薦使用)
- “刪除不建議使用的1.2之前的SecurityManager方法和字段”( JDK-8189750 )
- java.lang.SecurityManager.classDepth(java.lang.String) (從JDK 1.2開(kāi)始不推薦使用)
按照當(dāng)前的建議,JDK 10將為可選的注釋元素forRemoval=true到一些以前不推薦使用的[ @Deprecated ] API元素,而這些API元素以前沒(méi)有設(shè)置forRemoval 。 這些包括與安全相關(guān)的接口,類和異常,這些接口,類和異常已被其他與安全相關(guān)的構(gòu)造所取代(許多早在JDK 1.2中就已被替換)。 幾種“ finalize” @Deprecated方法還增強(qiáng)了@Deprecated注釋,以指示從JDK 10開(kāi)始,它們“已指定在將來(lái)的版本中刪除”。 例如, JDK 9中已棄用 FileInputStream.finalize() ,但自JDK 10起 ,它將用forRemoval=true 標(biāo)記 。
很長(zhǎng)時(shí)間以來(lái)(自JDK 1.2或更早版本開(kāi)始),不推薦使用JDK 10中要?jiǎng)h除的大多數(shù)JDK API構(gòu)造,因此有足夠的時(shí)間來(lái)替換這些構(gòu)造。 在JDK 10中新表示的要在將來(lái)的版本中刪除的大多數(shù)JDK API構(gòu)造已被棄用,此更改僅表示它們現(xiàn)在很可能在將來(lái)的版本中刪除。 JDK 9引入的增強(qiáng)的棄用機(jī)制使JDK API在通過(guò)@Deprecated批注的forRemoval=true元素預(yù)先通告了可能的刪除之后,可以更積極地刪除這些結(jié)構(gòu)。 JDK 9刪除了幾項(xiàng)內(nèi)容 ,并且似乎JDK 10可能會(huì)繼續(xù)刪除某些先前不推薦使用的API元素。
翻譯自: https://www.javacodegeeks.com/2018/02/apis-removed-java-10.html
總結(jié)
以上是生活随笔為你收集整理的从Java 10中删除的API的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 您将在下一个项目中使用JSF吗?
- 下一篇: z8300平板电脑系统(平板z8300处