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