JDK 16是一個專門用于Java編程的語言構建應用程序和組件的開發環境,JDK內已經包括JRE環境,包含了Java運行環境、Java開發工具和Java基礎類庫源代碼。在16版本中,新增了模式匹配允許程序中的通用邏輯,即從對象中提取組件,啟用 C++ 14 語言功能,允許在C++ 源代碼中使用C++ 14功能。
軟件特色
1、用于運算符的模式匹配(該功能也在該軟件的14/15 版本中實現了預覽)。在 JDK 16 上,模式匹配允許程序中的通用邏輯,即從對象中提取組件,可以更簡潔、更安全地表達.instanceof 運算符。
2、提供用于打包獨立的 Java應用程序 jpackage 工具。最初作為14 中的孵化工具,jpackage在15中仍然處于孵化期。預計到本次版本中,jpackage 將會進入生產環境中,支持本地包格式,并為用戶提供流暢的安裝體驗,以及允許在打包時指定啟動時間參數。格式包括 Windows 上的 msi 和 exe、 MacOs 上的 pkg 和 dmg、以及 Linux 上的 deb 和 rpm 。該工具可以直接從命令行調用,也可以以編程方式調用。新的打包工具解決了許多 Java 應用程序需要以一流的方式安裝在本機平臺上,而不是放置在類路徑或模塊路徑上等問題。
3、源代碼存儲庫從 Mercurial 遷移到 Git。推動這項工作是借助版本控制系統元數據和可用工具及托管方面的優勢。
4、借助 JEP 369,托管平臺遷移到 GitHub。在今年 9 月 5 日,Mercurial和沙盒向 Git、GitHub 和 Skara 的過渡工作已實現。
5、彈性元空間功能,它將可以更迅速地將未使用的 HotSpot VM 類元數據(元空間)內存返回到操作系統,減少元空間占用空間并簡化元空間代碼以降低維護成本。
6、啟用 C++ 14 語言功能,允許在C++ 源代碼中使用C++ 14功能,并提供有關部分功能可用于 HotSpot VM 代碼的特定指導。
7、孵化器階段的向量 API,其中軟件將安裝一個孵化器模塊,用于表示編譯為支持的 CPU 體系結構上的最佳矢量硬件指令的矢量計算,以實現與等效標量計算更高的性能。
軟件功能
1、可執行文件
(在bin/子目錄中)Java運行時環境(JRE)的實現。JRE包括Java虛擬機(JVM™),類庫和其他文件,這些文件支持以Java編程語言編寫的程序的執行。該目錄還包括工具和實用程序,可幫助您開發,執行,調試和記錄以Java編程語言編寫的程序。
2、配置文件
(在conf/子目錄中)包含用戶可配置選項的文件??梢跃庉嫶四夸浿械奈募?,以更改JDK的訪問權限,配置安全算法并設置Java密碼學擴展策略文件,這些文件可用于限制JDK的加密強度。
3、C頭文件
(在include/子目錄中)C語言頭文件,支持使用Java本機接口和Java虛擬機(JVM)調試器接口進行本機代碼編程。
4、編譯的Java模塊
(在jmods/子目錄中)jlink用于創建自定義運行時的編譯模塊。
5、版權和許可文件
(在legal/子目錄中)每個模塊的許可和版權文件。將第三方通知包含為.md(markdown)文件。
6、其他庫
(在lib/子目錄中)JDK所需的其他類庫和支持文件。這些文件不供外部使用。
7、組態
配置JRE或JDK不被視為出于重新分發目的的修改。
您可以通過下修改文件配置軟件conf/目錄%的Java平臺標準版(Java SE)文檔,包括選擇一個或下創建自己的Java加密擴展策略文件
conf/security/policy。一旦選擇或創建自己的文件,就不需要包括其他策略文件。
配置教程
一、在本站下載并安裝JDK16,一直下一步即可。
二、設置環境變量
1、系統→設置→關于→高級系統設置→環境變量
2、新建環境變量
- 變量名:JAVA_HOME
變量值(絕對路徑):D:\Java\jdk-16
3、新建環境變量
- 變量名:PATH
變量值(相對路徑):%JAVA_HOME%\bin
變量值(相對路徑):%JAVA_HOME%\jre\bin
4、新建環境變量
- 變量名:CLASSPATH
變量值:%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
5、設置完成保存
三、驗證是否配置完成
1、打開cmd輸入javac -version
2、可以看見已經配置成功
更新內容
1、語言增強功能首次在JDK 14中引入,在JDK 16中完成
JEP 394:instanceof的模式匹配–通過為instanceof運算符進行模式匹配來增強Java編程語言。
JEP 395:記錄–通過記錄增強Java編程語言,記錄是充當不變數據透明載體的類。記錄可以被視為名義元組。
2、提高開發人員生產力的新工具
JEP 392:打包工具–提供jpackage工具,用于打包自包含的Java應用程序。
3、改進的內存管理以提高性能
JEP 387:彈性元空間–更快地將未使用的HotSpot類元數據(即,元空間)內存返回給操作系統,減少元空間的占用空間,并簡化元空間代碼,以降低維護成本。
JEP 376:ZGC:并行線程堆棧處理–將ZGC線程堆棧處理從安全點移至并發階段。這項工作消除了允許并發堆棧處理的最后一個顯著瓶頸。
4、改進的網絡以提高開發人員的生產力和靈活性
JEP 380:UNIX域套接字通道–將對主要UNIX平臺和Windows通用的UNIX域套接字的所有功能的支持添加到java.nio.channels包中的套接字通道和服務器套接字通道API。UNIX域套接字用于同一主機上的進程間通信(IPC)。它們在大多數方面與TCP / IP套接字類似,不同之處在于它們是通過文件系統路徑名而不是Internet協議(IP)地址和端口號來尋址的。
5、解決未來不兼容的代碼
JEP 396:默認情況下強烈封裝JDK內部–在JDK 9中,我們強烈封裝了新的內部API元素,從而限制了對它們的訪問。但是,作為遷移的輔助手段,JDK 9故意選擇在運行時不強烈封裝JDK 8中存在的軟件包的內容。JDK16默認情況下封裝了JDK的大多數內部元素(關鍵內部API除外),從而加強了此約束。例如sun.misc.Unsafe。最終用戶仍然可以選擇自JDK 9以來默認使用的寬松的強封裝。這將鼓勵開發人員從使用內部元素遷移到使用標準API,以便他們和他們的用戶都可以毫不費力地升級到將來的Java版本。
JEP 390:基于值的類的警告–將原始包裝器類指定為基于值的類,并棄用其構造函數以進行刪除,從而提示新的棄用警告。提供有關在Java平臺中不正確嘗試在任何基于值的類的實例上進行同步的警告。
6、孵化和預覽功能
JEP 338:矢量API(孵化器) –提供孵化器模塊jdk.incubator.vector的初始迭代,以表達可在運行時可靠地編譯為支持的CPU架構上的最佳矢量硬件指令的矢量計算。
JEP 389:外部鏈接程序API(孵化器) –引入了API,該API提供了對本地代碼的靜態類型的純Java訪問。
JEP 393:外部存儲器訪問API(第三孵化器) –引入了API,以允許Java程序安全有效地訪問Java堆之外的外部存儲器。
JEP 397:密封類(第二預覽) –通過密封類和接口增強了Java編程語言。密封的類和接口限制可以擴展或實現它們的其他類或接口。
7、OpenJDK貢獻者的改進
JEP 347:啟用C ++ 14語言功能(在JDK源代碼中) –允許在JDK C ++源代碼中使用C ++ 14語言功能,并提供有關在HotSpot代碼中可以使用哪些功能的特定指南。
JEP 357:從Mercurial遷移到Git –將OpenJDK社區的源代碼存儲庫從Mercurial(hg)遷移到Git。
JEP 369:遷移到GitHub –在GitHub上托管OpenJDK社區的Git存儲庫。
8、新端口在更多平臺上提供對Java的支持
JEP 386:Alpine Linux端口–在x64和AArch64體系結構上,將JDK移植到Alpine Linux以及使用musl作為其主要C庫的其他Linux發行版。
JEP 388:Windows / Aarch64端口–將JDK移植到Windows / AArch64。
標簽: java工具
相關版本
精品推薦
-
IntelliJ IDEA 2019
詳情 -
Microsoft VC++6.0安裝包
詳情 -
Microsoft VC++2015版運行庫
詳情 -
VC++2019運行庫
詳情 -
RobotStudio
詳情 -
Intel Visual Fortran
詳情 -
Microsoft Visual Studio 2022
詳情 -
Microsoft VC++2010運行庫安裝包
詳情 -
源碼編輯器4.0
詳情 -
博途V18破解授權軟件
詳情 -
GX Works2
詳情 -
microsoft visual studio 2019免費版
詳情 -
hypermill2021超級加密狗破解版
詳情 -
西門子博途v17破解版
詳情 -
星三好圖形化編程軟件官方最新版
詳情 -
VBSEdit9
詳情
-
6 源碼智造編輯器
裝機必備軟件
網友評論