JEP 494:Module Import Declarations (預覽版) — 開發人員可以快速輕鬆地匯入由模組匯出的所有套裝軟體,無需將匯入代碼帶至模組中,從而提高工作效率。這讓所有開發人員能夠輕鬆地重複使用模組化程式庫,並協助初學者更輕鬆地使用第三方程式庫和基本 Java 類別,而不需要瞭解它們在套裝程式層次結構中的位置。此功能也有助於開發人員快速整合業務邏輯與原生 AI 推論、程式庫或服務呼叫。
JEP 495:Simple Source Files 和 Instance Main Methods (第四次預覽版) — 透過 Java 程式設計入門教程,學生無需瞭解為大型程式設計的語言功能也能編寫自己的第一個程式。因此,教育工作者可以逐步介紹概念,學生也可以為單一類別的程式編寫簡潔的宣告,並隨著個人技能的提升,無縫地擴展程式並使用更進階的功能。此外,經驗豐富的 Java 開發人員也能以簡潔且高效的方式編寫小程式,而不需要使用專為大型專案設計的工具。
程式庫
JEP 485:Stream Gatherers — 透過增強 Stream API 來支援自訂的中介作業,讓串流管線能夠以現有內建的中介作業無法輕易達成的方式轉換資料,協助開發人員更有效率地讀取、寫入及維護 Java 程式碼。
JEP 484:Class-File API — 透過提供標準的 API 來解析、生成和轉換 Java 類別檔案,並追蹤 Java Virtual Machine 規格所定義的類別檔案格式,協助開發人員提高生產力。
JEP 487:Scoped Values (第四次預覽版)— 支援開發人員在執行緒內和執行緒之間共用不可變的資料,從而提高專案的易用性、可理解性、效能和穩健性。
JEP 489:Vector API (第九次孵化) — 新推出的 API 可用來表示在運行時可靠地編譯為支援的 CPU 架構上的向量指令的向量運算,協助開發人員提高生產力,因此,開發人員可以實現優於等效標量運算的效能,這在 AI 推論和運算場景中經常被使用。
JEP 499:Structured Concurrency (第四次預覽版) — 透過為結構化並行打造的新 API 簡化並行程式設計,協助開發人員改善多執行緒程式碼的可維護性、可靠性和可觀察性。透過將不同執行緒中執行的相關任務群組視為單一工作單位,結構化並行有助於減少因取消和關閉而產生的常見風險,例如執行緒洩漏和取消延遲。
安全程式庫
JEP 478:Key Derivation Function API (預覽版) — 透過為傳輸中的資料提供加密安全,協助開發人員為未來的量子運算環境做好準備,從而提高機密性和通訊完整性。
JEP 475:Late Barrier Extension for G1 — 透過將 G1 垃圾回收器的邊界擴展,從 C2 JIT 編譯管道的早期階段延後到後期,協助開發人員提高效率。這樣一來,若在平台無關的最佳化和註冊分配之後執行,則可減少開銷。透過簡化 G1 垃圾回收器邊界的實作,此功能有助於提升 C2 生成代碼的效率、可理解性、韌性及品質。
JEP 483:Ahead-of-Time Class Loading & Linking:當 HotSpot Java 虛擬機啟動時,確保應用程式的類別在載入和連結狀態下立即可用,從而協助開發人員提高工作效率並縮短啟動時間。此功能不需要使用 jlink 或 jpackage 工具,也不需要改變應用程式的啟動方式或應用程式、程式庫或框架的程式碼,有助於為未來在啟動和預熱時間上的持續改進奠定基礎。
JEP 490:ZGC: Remove the Non-Generational Mode — 藉由移除 Z Garbage Collector (Z Garbage Collector, ZGC) 的非世代模式,協助開發者降低支援兩種不同模式的維護成本。
JEP 491:Synchronize Virtual Threads without Pinning — 透過擴展使用同步方法和語句的 Java 程式碼和程式庫的可擴展性,協助開發人員提高生產力。此功能透過啟用虛擬線程釋放其底層平台線程,讓開發人員可以存取更多虛擬線程來管理應用程式的工作負載。
原始程式碼
JEP 404:Generational Shenandoah (實驗性) — 透過實驗性世代收集功能增強 Shenandoah 垃圾回收器,提高可持續吞吐量、負載峰值彈性和記憶體使用率,從而提高開發人員的生產力。
JEP 479:Remove the Windows 32-bit x86 Port — 透過移除原始程式碼並建立對 Windows 32 位元 x86 連接埠的支援,簡化 JDK 的建置和測試基礎架構,協助開發人員提高效率。
JEP 501:Deprecate the 32-bit x86 Port for Removal — 透過棄用 32 位 x86 連接埠,並計畫在未來版本中移除,協助提高開發人員的生產力。這樣一來,開發人員可以使用需要特定平台支援的新功能,而無需實作 32 位 x86 的後援機制。
此外,透過引入現代的安全功能,同時逐步棄用和移除不安全的功能,Oracle 強調了其對維護 Java 完整性並與軟體開發最佳實務保持一致的承諾。Oracle 將在未來的 Java 版本中移除這三個功能:JEP 472: Prepare to Restrict the Use of JNI;JEP 486: Permanently Disable the Security Manager;JEP 498: Warn upon Use of Memory-Access Methods in sun.misc.Unsafe。
Java 24 的功能是 Oracle 與全球 Java 開發人員社群成員在 OpenJDK 和 Java Community Process (JCP) 合作的成果。如需 Java 24 功能的詳細資訊,請參閱 Java 24 技術部落格文章。