Java 14 可能帶來什麼新特性?

朱小廝的部落格發表於2022-12-08

Java 14 可能帶來什麼新特性?

來源:

JDK/Java 13 在一個月前已經發布,該版本帶來了 5 大新特性,筆者觀察到其中的 Text Blocks(文字塊)特性似乎被討論最多。文字塊特性與常見的 Python """any input""" 特性一樣,它支援多行字串文字,可以不需要使用大多數轉義序列,同時可以讓開發人員控制格式。雖然這不是特別複雜的特性,但對於開發中想將 HTML 程式碼引入 Java 來說是極大的便利,程式碼可讀性也極大提高。

關於 Java 13 的其它新特性這裡不贅述,感興趣的話可以看看文末推薦的幾篇內容。這裡想寫的其實是:按照慣例,可以開始盯著 Java 14 的新特性了。

JDK 14 現在處於 Early-Access(EA,早期訪問)階段,按照發布週期正式版本將於明年 3 月 17 日釋出。

目前最新版本是 build 17(),各個 build 的更新說明可以檢視:。

Java 14 可能帶來什麼新特性?

本文引用 InfoWorld () 的報導,介紹一下目前 JDK 14 中可能會出現的 3 項新特性。其中有兩個特性被正式提了出來,還有一個特性則是預測性質,分別看看:

  • 改進 NullPointerExceptions,透過準確描述哪些變數為 null 來提高 JVM 生成的異常的可用性。該提案的作者希望為開發人員和支援人員提供有關程式為何異常終止的有用資訊,並透過更清楚地將動態異常與靜態程式程式碼相關聯來提高對程式的理解。

  • 非易失性對映的位元組緩衝將新增新的 JDK 特定檔案對映模式,該模式允許 FileChannel API 用於建立引用非易失性記憶體(NVM)的 MappedByteBuffer 例項。NVM 使開發者可以跨程式構建和更新程式狀態,而不會產生輸入和輸出操作通常需要的大量複製和翻譯成本,這對於交易程式而言尤其重要。該增強提案主要目標是確保客戶端可以連貫有效地從 Java 程式訪問和更新 NVM;第二個目標是使用 Unsafe 類中定義的受限制 JDK 內部 API 來實現此提交行為,因此可以由可能需要提交給 NVM 的 MappedByteBuffer 之外的其它類重用;另一個目標是允許現有 API 跟蹤在 NVM 上對映的緩衝區,以進行監控和管理。

  • Switch Expressions 在 JDK 12 與 13 中都是預覽狀態,預計在 JDK 14 中成為穩定特性。switch 表示式擴充套件了 switch 語句,使其不僅可以作為語句(statement),還可以作為表示式(expression),並且兩種寫法都可以使用傳統的 switch 語法,或者使用簡化的“case L ->”模式匹配語法作用於不同範圍並控制執行流。這些更改將簡化日常編碼工作,併為 switch 中的模式匹配(JEP 305,地址:)做好準備。

JDK 14 EA 版本下載地址:

最後,需要注意的是 EA 階段的特性也有可能永遠不會出現在最終的 JDK/Java 14 正式 GA 版本中。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69940568/viewspace-2660855/,如需轉載,請註明出處,否則將追究法律責任。

相關文章