Oracle 已經(jīng)發(fā)布了 Java Development Kit 10,下一個版本 JDK 11 也在準備之中了。按照 Java 新的版本發(fā)布標準,Java 11 將在 6 個月后到來,現(xiàn)在它還只有一部分新功能。據(jù)了解,Java 11 將移除 CORBA 和 Java EE(最近更名為 Jakarta EE)模塊同時也會移除 JavaFX,因此,Java 11 也將失去一些功能。
與 JDK 10 不同,JDK 11 將成為 Java 平臺標準版 Java SE 11 的參考實現(xiàn)。JDK 11 將在 2023 年 9 月之前從 Oracle 獲得首要級別的支持,并將擴展支持 ,具有補丁和安全警報,直至 2026 年。
計劃用于 Java 11 的新功能
目前,JDK 11 只設(shè)置了三個新功能,包括:
Epsilon 垃圾收集器被稱為“no-op”收集器,將處理內(nèi)存分配而不實施任何實際的內(nèi)存回收機制。 Epsilon 的使用案例包括測試性能,內(nèi)存壓力和虛擬機界面。 它也可以用于短期工作。
lambda 參數(shù)的局部變量語法,應(yīng)該將隱式類型表達式中的形式參數(shù)聲明的語法與局部變量聲明的語法對齊。 這將允許在聲明隱式類型的 lambda 表達式的形式參數(shù)時使用 var。
Java類文件格式將被擴展為支持一個新的常量池形式CONSTANT_Dynamic。 目標是降低開發(fā)新形式的可實現(xiàn)的類文件約束的成本和中斷。
Java 11 將擯棄的部分
Java EE EE 和 CORBA 模塊在 Java SE 9 中已棄用,意圖在 Java 11 中將它們刪除。
2006 年 12 月發(fā)布的 Java SE 6 包含了一個完整的 Web 服務(wù)棧,以方便開發(fā)人員,其中包括為 Java EE 平臺構(gòu)建的幾種技術(shù):
JAX-WS(基于 XML 的 Web 服務(wù)的 Java API,JAXB XML 綁定)
JAF(JavaBeans 激活框架)
Java 常用注釋
等等
隨著時間的推移,Java EE 版本不斷發(fā)展,給 Java SE 的發(fā)展帶來困難,例如與 Java SE 無關(guān)的技術(shù)和跨兩個 Java 版本的維護更加困難。Oracle 表示在 Java SE 或 JDK 中不再需要借助第三方站點提供的獨立版本的 Java EE 技術(shù)。
一些依賴于 JDK for Java EE API 和工具的開箱即用的應(yīng)用,將無法編譯或運行。另外,將 JDK 6,7 或 8 遷移到更高版本時會出現(xiàn)二進制和源不兼容的問題。 甲骨文表示,受這些風(fēng)險影響的開發(fā)人員可以部署替代版本的 Java EE 技術(shù)來解決。