甲骨文中國今日正式揭曉了Java編程語言的最新版本——Java 24(Oracle JDK 24)。這一里程碑式的發布,標志著Java平臺迎來了數千項改進和20多項新功能,其中特別強調了AI與后量子密碼學的集成。
在Java 24中,開發人員將能夠借助全新的AI和后量子密碼功能,輕松構建出前沿的AI應用。新特性不僅豐富了Java的生態系統,還進一步提升了其作為企業級開發平臺的價值。
語言方面,Java 24引入了多項重大更新。例如,JEP 488通過第二預覽版的發布,使得模式匹配、instanceof和switch語句對基元類型的支持更加全面,提升了代碼的表達能力和開發效率。JEP 492則帶來了構造函數體的靈活性提升,通過兩個不同階段的序言和表述,讓代碼更加可靠。JEP 494讓模塊導入聲明更加便捷,簡化了模塊化庫的重用,使得開發人員能夠更輕松地集成AI推理、庫或服務調用。JEP 495則專注于簡化Java編程的入門過程,通過簡化源代碼文件結構,加快了新手的學習速度。
在庫功能方面,Java 24也進行了諸多創新。JEP 485推出的Stream Gatherers增強了Stream API,支持自定義中間操作,提高了代碼的可讀性和維護性。JEP 484則通過提供標準的類文件API,簡化了Java類文件的解析、生成和轉換過程。JEP 487的Scoped Values功能則允許開發人員在線程內和線程之間共享不可變數據,提升了項目的性能和穩健性。JEP 489的Vector API進入第九次孵化階段,為向量計算提供了高效支持,尤其適用于AI推理和計算場景。JEP 499的結構化并發API則簡化了并發編程,提高了多線程代碼的可維護性和可靠性。
安全方面,Java 24同樣不遺余力。JEP 478的密鑰派生函數API為數據在傳輸中的加密安全提供了保障,為應對量子計算環境做好了準備。JEP 496和JEP 497則分別支持了基于模塊晶格的密鑰封裝機制和數字簽名算法,為Java應用提供了抗量子的安全保障,標志著Java平臺在后量子加密技術方面的重大進步。
工具鏈方面,Java 24也帶來了效率提升。JEP 493允許jlink工具在不使用JMOD文件的情況下創建定制運行時映像,顯著減小了JDK的大小。JEP 450的實驗性Compact Object Headers特性在64位架構上減少了對象標頭的大小,提高了堆的效率和數據局部性。JEP 475的G1垃圾收集器優化則通過晚期屏障擴展降低了開銷。JEP 483的提前類加載與鏈接功能則縮短了應用的啟動時間。
在性能和運行時更新方面,Java 24還刪除了ZGC的非分代模式(JEP 490),提高了虛擬線程的可擴展性(JEP 491),并通過實驗性的分代收集功能增強了Shenandoah垃圾收集器(JEP 404)。Java 24還刪除了對Windows 32位x86端口的支持(JEP 479),并計劃在未來的版本中棄用32位x86端口(JEP 501),以簡化JDK的構建和測試架構。
Oracle在Java 24中還強調了安全特性的現代化,逐步棄用和刪除不安全的特性。例如,JEP 472計劃限制JNI的使用,JEP 486永久禁用了安全管理器,JEP 498則在使用sun.misc.Unsafe中的內存訪問方法時發出警告。這些措施旨在保持Java的完整性和遵循軟件開發優秀實踐。