Oracle Java 14釋出! | Oracle Java平臺組

banq發表於2020-03-18

Oracle自豪地宣佈Java 14的全面上市,這是六個月計劃中的第五​​個功能版本。兩年多來的這種可預測性水平,使開發人員能夠不斷獲得預期的更改,從而更輕鬆地管理他們對創新的採用。

Oracle現在為所有開發人員和企業提供Java 14。根據Oracle關鍵補丁更新(CPU)時間表,Oracle JDK 14將至少獲得兩個季度的更新,然後再發布Oracle JDK15。Java15將於2020年9月全面上市,但早已提供了早期訪問版本

JDK 14隨附的16個JEP是:

  1. JEP 305- instanceof [url=https://openjdk.java.net/jeps/305](預覽)的[/url]模式匹配:此預覽功能通過為instanceof 運算子進行模式匹配來增強Java 。通過消除對通用樣板程式碼的需求,提高了開發人員的生產率,並允許使用更簡潔的型別安全程式碼。
  2. JEP 343- 打包工具(孵化器):此孵化器工具為開發人員提供了一種打包Java應用程式的方式,以便以平臺特定的格式進行分發。該工具可幫助開發人員使用現代應用程式,其中約束要求執行時和應用程式捆綁在一個交付物中。
  3. JEP 345 -G1的NUMA感知記憶體分配:此功能提高了非均勻記憶體訪問(NUMA)系統上G1垃圾收集器的整體效能。
  4. JEP 349- JFR事件流:此功能公開了JDK Flight Recorder(JFR)資料以進行連續監視,這將簡化各種工具和應用程式對JFR資料的訪問。
  5. JEP 352- 非易失性對映位元組緩衝區:使用非易失性儲存器時,此功能為JDK新增了檔案對映模式。非易失性儲存器的永續性改變了各種永續性和效能假設,可以通過此功能利用這些假設。
  6. JEP 358- 有用的NullPointerExceptions:此功能通過精確描述哪個變數為null以及其他有用資訊,提高了NullPointerExceptions 的可用性。這將提高開發人員的生產率,並提高許多開發和除錯工具的質量。
  7. JEP 359- 記錄(預覽):此預覽功能提供了一種緊湊的語法,用於宣告儲存淺層不變資料的類。從表面上看,此功能大大減少了此類中的樣板程式碼,但最終其目的是更好地允許將資料建模為資料。宣告淺不變的標稱資料聚合應該很容易,清楚和簡潔。
  8. JEP 361- 開關表示式:這是JDK 12 JDK 13中的預覽功能,現在已完成。它允許將switch 用作語句或表示式。此功能簡化了每天的編碼,併為此版本中預覽的模式匹配(JEP 305 )功能準備了方法。
  9. JEP 362- 棄用Solaris和SPARC埠:此JEP棄用Solaris和SPARC埠,以在將來的發行版中將其刪除。 
  10. JEP 363- 刪除併發標記掃描(CMS)垃圾收集器:CMS垃圾收集器在兩年前已過時,並且自JDK 6起已成為CMS的後繼產品的G1已成為預設GC,並已在許多情況下大規模使用年份。我們還看到了引入了兩個新的收集器,ZGC和Shenandoah,同時對G1進行了許多改進。 
  11. JEP 364- macOS上的ZGC :儘管大多數需要ZGC的使用者也需要基於Linux的環境的可伸縮性,但在Windows和macOS中也經常需要部署和測試它。還有某些桌面應用程式將從ZGC功能中受益。因此,ZGC功能已移植到Windows和macOS。
  12. JEP 365-  Windows上的ZGC:請參考JEP 364的摘要。
  13. JEP 366-棄用ParallelScavenge + SerialOld GC組合:這棄用了Parallel Scavenge和Serial Old垃圾收集演算法的組合,該組合很少使用,並打算在以後的版本中刪除它。
  14. JEP 367- 刪除Pack200工具和API:這將刪除java.util.jar軟體包中的pack200和unpack200工具以及Pack200 API。這些工具和API 已在Java SE 11棄用
  15. JEP 368- 文字塊(第二個預覽):在Java 首次將文字塊作為預覽功能(JEP 355 )引入時,收到反饋後,新增了兩個新的轉義序列,並且提供了文字塊作為預覽功能第二次。文字塊的優點包括:使用跨越原始碼多行的字串簡化了程式的編寫,同時避免了常見情況下的轉義序列;增強了Java程式中表示用非Java語言編寫的程式碼的字串的可讀性;通過規定任何新構造都可以表達與字串文字相同的字串集,解釋相同的轉義序列並以與字串文字相同的方式進行操作,來支援從字串文字的遷移。
  16. JEP 370- 外部儲存器訪問API(孵化器):此孵化器模組引入了一個API,以允許Java程式安全有效地訪問Java堆之外的外部儲存器。

banq注:Java8和Java11是長期支援版本。

完全免費的adoptopenjdk14:https://adoptopenjdk.net/index.html?variant=openjdk14&jvmVariant=hotspot

相關文章