👁 關注微信公衆號:非典型理科男 回覆:jdk14獲取全部關於JDK14新特性的文章。算法
2020年3月17日,JDK14正式發佈。express
JDK14將在4月和7月收到安全更新,而後由9月到期的非LTS版本的JDK 15取代。JDK14包括16項新功能,例如JDK Flight Recorder事件流,模式匹配和開關表達式等特徵。 macos
從JDK9以後,Oracle採用了新的發佈週期:每6個月發佈一個版本,每3年發佈一個LTS版本。JDK14是繼JDK9以後發佈的第四個版本, 該版本爲非LTS版本,最新的LTS版本爲JDK11。windows
JDK14包含了比JDK12和JDK13加在一塊兒還多的特性。共包括16項的新特性。api
包括7項新特性,其中3項爲正式特性,7項爲非正式特性。安全
Switch Expressions 在 JDK 12 與 13 中都是預覽狀態,如今在 JDK 14 中已成爲穩定特性。switch 表達式擴展了 switch 語句,使其不只能夠做爲語句(statement),還能夠做爲表達式(expression),而且兩種寫法均可以使用傳統的 switch 語法,或者使用簡化的「case L ->」模式匹配語法做用於不一樣範圍並控制執行流。這些更改將簡化平常編碼工做,併爲 switch 中的模式匹配作好準備微信
改進 NullPointerExceptions,經過準確描述哪些變量爲 null 來提升 JVM 生成的異常的可用性。該提案的做者但願爲開發人員和支持人員提供有關程序爲什麼異常終止的有用信息,並經過更清楚地將動態異常與靜態程序代碼相關聯來提升對程序的理解。架構
非易失性映射的字節緩衝將添加新的 JDK 特定文件映射模式,該模式容許 FileChannel API 用於建立引用非易失性內存(NVM)的 MappedByteBuffer 實例。併發
Records 提供了一種緊湊的語法來聲明類,以幫助開發者寫出更簡潔的代碼,這些類是淺層不可變數據(shallowly immutable data)的透明擁有者。該特性主要用在特定領域的類,這些類主要用於保存數據,不提供領域行爲。app
經過模式匹配,開發者能夠用更簡潔和更安全的方式來表達通用的程序邏輯。instanceof 運算符的模式匹配支持從對象中按條件來提取組件,此語言特性目前處於預覽階段。
文本塊特性(Text Blocks)與常見的 Python"""any input"""特性同樣,它支持多行字符串文字,能夠不須要使用大多數轉義序列,並以一種可預測的方式自動設置字符串格式,同時可讓開發人員控制格式。雖然這不是特別複雜的特性,但對於開發中想將 HTML 代碼引入 Java 來講是極大的便利,代碼可讀性也極大提升。目前處於第二個預覽階段。
新增一個 API 以容許 Java 程序安全有效地訪問 Java 堆以外的外部內存。
共包括6項新特性,修改均爲正式狀態。
經過實現 NUMA-aware 內存分配,提高 G1 在大型機器上的性能。
暴露 JDK Flight Recorder 數據以進行連續監視。
將 ZGC 垃圾回收器移植到 macOS和Windows平臺。
共包括2個新特性。
共包括1個項子新特性。處於孵化狀態。
建立一個用於打包獨立 Java 應用程序的工具。
所有新特性以下:
305: instanceof的模式匹配(預覽)
343: 包裝工具(培養箱)
345: G1的NUMA感知內存分配
349: JFR事件流
352: 非易失性映射字節緩衝區
358: 有用的NullPointerExceptions
359: 記錄(預覽)
361: 開關表達式(標準)
362: 棄用Solaris和SPARC端口
363: 刪除併發標記掃描(CMS)垃圾收集器
364: Mac OS上的ZGC你像
365: Windows上的ZGC
366: 棄用ParallelScavenge + SerialOld GC組合
367: 刪除Pack200工具和API
368: 文本塊(第二預覽)
370: 外部存儲器訪問API(孵化器)
回覆「資料」,免費獲取 一份獨家嘔心整理的技術資料!
回覆「資料」,免費獲取 一份獨家嘔心整理的技術資料!