Java 教程

Java 控制語句

面向物件程式設計

Java 內建類

Java 檔案處理

Java 錯誤與異常

Java 多執行緒

Java 同步

Java 網路程式設計

Java 集合

Java 介面

Java 資料結構

Java 集合演算法

高階 Java

Java 其他

Java API 與框架

Java 類引用

Java 有用資源

Java 14 新特性



Java 14 是一個主要功能版本,它為 Java 帶來了許多 JVM 特定的更改和語言特定的更改。它遵循從 Java 10 開始引入的 Java 釋出節奏,並於 2020 年 3 月 17 日釋出,僅在 Java 13 釋出六個月後。

Java 14 不是 LTS 版本。

Java 14 的新特性

以下是 Java 14 中引入的主要新特性。

  • JEP 361 − switch 表示式 − 現在是一個標準特性,允許 switch 透過 yield 使用返回值。

  • JEP 368 − 文字塊 − 第二個預覽特性,用於輕鬆處理多行字串,例如 JSON、XML。

  • JEP 305 − 例項的模式匹配 − instanceOf 運算子增強為攜帶謂詞。

  • JEP 358 − NullPointerException 訊息 − NullPointerException 現在可以傳送詳細訊息。

  • JEP 359 − 記錄 − 引入一種新的記錄型別的預覽特性。

  • JEP 343 − 打包工具 − 引入基於 javapackager 的新打包程式。

  • JEP 345 − NUMA 感知 G1 − G1 垃圾收集器現在是 NUMA 感知的。

  • JEP 349 − JFR 事件流 − 模組 jdk.jfr 中的包 jdk.jfr.consumer 增強為非同步訂閱事件。

  • JEP 352 − 非易失性對映位元組緩衝區 − 添加了新的檔案對映模式以引用非易失性記憶體 (NVM)。

  • JEP 363 − 刪除 CMS 垃圾收集器 − 在 Java 9 中棄用的併發標記清除 (CMS) 垃圾收集器已被刪除。

  • JEP 347 − 刪除 Pack200 工具和 API − 刪除了 pack200 和 unpack200 工具以及來自 java.util.jar 的 Pack200 API。

  • JEP 370 − 外部記憶體訪問 API − 一個訪問堆空間之外的外部記憶體的新 API。

棄用與移除

以下是 Java 14 中棄用和移除的列表:

棄用

  • Solaris 和 SPARC 埠 (JEP 362) − 因為這個 Unix 作業系統和 RISC 處理器在過去幾年中沒有積極開發。

  • ParallelScavenge + SerialOld GC 組合 (JEP 366) − 因為這是很少使用的 GC 演算法組合,並且需要大量的維護工作。

移除

  • 併發標記清除 (CMS) 垃圾收集器 (JEP 363) − 此 GC 在 Java 9 中已棄用,並被 G1 替換為預設 GC。還有其他高效能的替代方案,例如 ZDC、Shenandoah。此 GC 保留了 2 年,供感興趣的使用者維護。由於沒有積極的維護,此 GC 現在已從 Java 14 中完全刪除。

  • Pack200 工具和 API (JEP 367) − 這些壓縮庫是在 Java 5 中引入的,並在 Java 11 中已棄用。現在這些庫已從 Java 14 中完全刪除。

廣告