JDK 16 即將釋出,新特性速覽!
閱讀本文大概需要 3.5 分鐘。
來自:blog.csdn.net/csdnnews/article/details/110483909
你還能追上 Java 的更新速度嗎?
以前在 JDK 15 中預覽的密封類和介面限制其他類和介面可以擴充套件或實現它們。該計劃的目標包括,允許類或介面的作者控制負責實現它的程式碼,提供比訪問修飾符更宣告性的方式來限制超類的使用,以及透過提供模式分析的基礎來支援模式匹配的未來方向。 預設情況下,對 JDK 內部進行強封裝,但關鍵內部 API(如 misc.Unsafe ) 除外。使用者可以選擇自 JDK 9 以來預設的寬鬆強封裝。此建議的目標包括提高 JDK 的安全性和可維護性,作為專案 Jigsaw 的一部分,並鼓勵開發人員從使用內部元素遷移到使用標準 API,以便開發人員和終端使用者都可以輕鬆地更新到未來的 Java 版本。 外部連結程式 API,提供靜態型別、純 Java 對本機程式碼的訪問。此 API 將在 JDK 16 中處於孵化器階段。 將 ZGC(Z 垃圾收集器)執行緒堆疊處理從安全點移動到併發階段。此計劃的目標包括從 ZGC 安全點中刪除執行緒堆疊處理。 彈性元空間功能,它將可以更迅速地將未使用的 HotSpot VM 類後設資料(元空間)記憶體返回到作業系統,減少元空間佔用空間並簡化元空間程式碼以降低維護成本。 啟用 C++ 14 語言功能,允許在 JDK C++ 原始碼中使用C++ 14功能,並提供有關部分功能可用於 HotSpot VM 程式碼的特定指導。 孵化器階段的向量 API,其中 JDK 將安裝一個孵化器模組,用於表示編譯為支援的 CPU 體系結構上的最佳向量硬體指令的向量計算,以實現與等效標量計算更高的效能。 將 JDK 移植到 Windows/AArch64 平臺。隨著新的伺服器級和使用者 AArch64 (ARM64) 硬體的釋出,Windows/AArch64 已成為一個重要的平臺。 在 x64 和 AArch64 體系結構上,將 JDK 移植到 Alpine Linux 和其他使用 musl 作為主 C 庫的 Linux 發行版。Musl 是 ISO C 和 Posix 標準中描述的標準庫功能的 Linux 實現。由於雲部署、微服務和容器環境,Alpine Linux 由於其映像大小較小,因此被廣泛採用。 為不可變資料提供充當透明載體的記錄類。 增加 Unix 域套接字通道,其中 Unix 域 (AF_UNIX) 套接字支援新增到 nio.channels 包中的套接字通道和伺服器套接字通道 API 中。該計劃還擴充套件了繼承的通道機制,以支援 Unix 域套接字通道和伺服器套接字通道。Unix 域套接字用於同一主機上的程式間通訊。它們在很多方面與 TCP/IP 套接字類似,只是它們由檔案系統路徑名稱而不是 IP 地址和埠號定址。新功能的目標是支援 Unix 域套接字通道的所有功能,這些功能在主要 Unix 平臺和 Windows 中很常見。 一種外部儲存器訪問 API,允許 Java 程式安全地訪問 Java 堆以外的外部儲存器。這一功能將在 JDK 16 中重新孵化。最佳化的目標包括提供單個 API 以對各種外部儲存器(包括本機、持久和託管堆記憶體)進行操作,API 不應破壞 JVM 的安全性。此外,許多 Java 程式應訪問外部儲存器,如Lgnite、Memcached 和 MapDB。但是 JavaAPI 不能提供令人滿意的訪問外部記憶體 .MemorySegmentMemoryAddresses 的解決方案。 用於運算子的模式匹配(該功能也在 JDK 14/15 版本中實現了預覽)。在 JDK 16 上,模式匹配允許程式中的通用邏輯,即從物件中提取元件,可以更簡潔、更安全地表達.instanceof 運算子。 提供用於打包獨立的 Java應用程式 jpackage 工具。最初作為 JDK 14 中的孵化工具,jpackage在 JDK 15中仍然處於孵化期。預計到 JDK 16 版本,jpackage 將會進入生產環境中,支援本地包格式,併為使用者提供流暢的安裝體驗,以及允許在打包時指定啟動時間引數。格式包括 Windows 上的 msi 和 exe、 MacOs 上的 pkg 和 dmg、以及 Linux 上的 deb 和 rpm 。該工具可以直接從命令列呼叫,也可以以程式設計方式呼叫。新的打包工具解決了許多 Java 應用程式需要以一流的方式安裝在本機平臺上,而不是放置在類路徑或模組路徑上等問題。 OpenJDK 原始碼儲存庫從 Mercurial 遷移到 Git。推動這項工作是藉助版本控制系統後設資料和可用工具及託管方面的優勢。 藉助 JEP 369,託管平臺遷移到 GitHub。在今年 9 月 5 日,Mercurial JDK 和 JDK 沙盒向 Git、GitHub 和 Skara 的過渡工作已實現。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69900357/viewspace-2747165/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- golang1.16新特性速覽Golang
- 學Java的同學看過來,JDK13即將釋出,新特性會是什麼?JavaJDK
- JDK16的新特性JDK
- Git 2.1釋出:新特性預覽Git
- 即將釋出的ionic4有哪些激動人心的新特性
- 特性速覽| Apache Hudi 0.5.3版本正式釋出Apache
- JDK 16 正式釋出,一次性發布 17 個新特性…不服不行!JDK
- Node.js 8.5 正式釋出,新特性一覽Node.js
- GCC 5 即將釋出GC
- HTTP/2 即將釋出HTTP
- Win10 Build 18234新預覽版釋出 新特性一覽Win10UI
- DS Linux即將釋出NDS專用瀏覽器Linux瀏覽器
- 重磅!阿里雲MongoDB 5.0釋出,速來圍觀新特性阿里MongoDB
- Vue 2.5釋出 代號Level E 新特性預覽Vue
- 簡訊:Linux 3.13 版釋出,新特性一覽Linux
- GCC 6 即將帶來的新特性GC
- KDE Plasma 5.17 即將釋出ASM
- Android 4.2即將釋出Android
- JDK 5新特性JDK
- SafeTitan歸來:新的加密貨幣ICO即將釋出加密
- squid-2.6即將釋出UI
- Kubernetes v1.23.0 正式釋出,新特性一覽
- JDK8新特性JDK
- JDK1.5新特性JDK
- JDK新特性--Stream流JDK
- 2016年5月即將釋出的手機推薦
- Go 1.18 中即將出現的功能特性Go
- 每日開源新聞速遞(2016/4/21):KDE Applications 16.04 釋出APP
- [譯] 即將到來的正規表示式新特性
- 正式釋出!VS Code 1.66新特性
- 錘子新機即將釋出 盤點小米的潛在對手
- ChunJun 1.16 Release版本即將釋出,bug 捉蟲活動邀您參與!
- JavaOne即將召開,Sun將釋出Java EE 5Java
- GitHub 桌面版 v3.0 新特性「GitHub 熱點速覽」Github
- java-jdk7新特性JavaJDK
- JDK8的新特性JDK
- JDK 19:Java 19新特性JDKJava
- 開源新聞速遞:Fedora 24 釋出