什麼?JDK16剛剛又發佈了?趕緊嚐嚐鮮

推薦閱讀:

今天,有讀者告訴小編,JDK16的搶鮮體驗版出來了,對於小編這種JDK的死忠粉來說,怎麼錯過呢?

這不,馬上下載下來品嚐一番,有圖爲證。

先來測試一下,版本是否正確?

沒錯,還是這個味道~

說實話,JDK的發佈速度是真的快啊,有點牛的一逼。之前看過一篇文章,博主Simon Ritter從Oracle目前爲止的公開發布中做出推斷,並繪圖展示了Java 的發佈節奏,如下圖所示

我們從圖中也可以發現JDK16也是一個短期版本,只支持6個月。長期版本也只有 7、8、11、17,因此,目前最新的LTS版本,就是 JDK 11,已於2018年9月發佈。接下來,咱們只能期待2021年即將發佈的下一個LTS版本JDK17~

這次發佈的JDK16也只是個搶鮮版,它的正式版本需要在 2021 年 3 月 16 日發佈。

如果你對JDK源碼感興趣,也可以通過Github去查看相關源碼,目前有6.8k star。

源碼地址:https://github.com/openjdk/jdk

Github的騷技巧真的好用,可以進行對比,來看看構建的這個搶鮮版,與之前的版本有哪些差別?如下圖所示

好了,言歸正傳,咱們還是來看看這個版本又給咱們帶來哪些新特性呢?

JEP338:Vector API(孵化器階段)

爲jdk.incubator.vector配備一個孵化器模塊,以表達可在支持的 CPU 架構上編譯爲最佳矢量硬件指令的矢量計算,以實現優於等效標量計算的性能。

JEP347:啓用 C ++ 14語言功能

允許在 JDK C ++源代碼中使用 C ++ 14功能。

JEP357、369:源碼遷移到Github

OpenJDK 源碼從 Mercurial 遷移到 Git,託管平臺也遷移到 GitHub。

源碼地址:https://github.com/openjdk/jdk

JEP376:ZGC(Z 垃圾收集器)線程堆棧處理

去掉ZGC線程堆棧處理從安全點到併發階段,該計劃的目標包括從 ZGC 安全點中刪除線程堆棧處理。

JEP380:Unix 域套接字通道

增加 Unix 域套接字通道,其中在 nio.channels 包中的套接字通道和服務器套接字通道 API 中增加了 Unix 域(AF_UNIX)套接字支持。

JEP386、388:將JDK移植到Windows/AArch64平臺

JEP387:彈性元空間能力

它可以將未使用的 HotSpot VM 類元數據(元空間)內存更迅速地返回給操作系統,從而減少元空間的佔用空間並簡化元空間代碼,從而降低維護成本。

JEP 389:外部存儲器訪問 API

允許 Java 程序安全地訪問 Java 堆外部的外部存儲器。

JEP392:打包管理工具

提供用於打包獨立 Java 應用程序的 jpackage 工具,如下:

jpackage --name myapp --module-path lib -m myapp

JEP393:外部存儲器訪問 API

允許 Java 程序安全地訪問 Java 堆外部的外部存儲器。

JEP394:instanceof運算符的模式匹配

用於 instanceof 運算符的模式匹配,在 JDK 14 和 JDK 15 中進行了預覽,將在 JDK 16 中完成,如:

if (obj instanceof String s && s.length() > 5) {

JEP395:Records

就是對之前玩法進行加強處理。

JEP396:加強JDK內部封裝

除了 misc.Unsafe 等關鍵的內部 API 外,默認情況下對 JDK 內部進行強封裝。用戶可以選擇自 JDK 9 以來默認的寬鬆的強封裝。

說實話,這些功能,在小編看來,對於咱們日常開發來說,真沒啥吸引力,小編的同事曾這樣說過,“自從JDK8以後,再也沒有趕上趟”,說實話,這句話說到大多數Java開發者的心坎裏去了

作爲一名老的Java程序員,小編反正扎心了,還是感謝Java給了我一口飯喫~

你目前在用哪個版本呢?歡迎在留言區說說。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章