大小:149.05M
更新时间:24-07-04
系统:Pc
jdk16是由甲骨文公司宣布推出的Java语言的软件开发工具包,Java仍然是有史以来最成功的开发平台之一,它基于不断创新以满足现代应用程序开发人员不断变化的需求,而在此工具包中它包含了该平台的17项新增强功能,能将进一步提高开发人员的生产力。该开发工具包 (JDK) 最终确定了 instanceof (JEP 394) 和Records (JEP 395) 的模式匹配,这是以前在 Java 14 中首次预览的语言增强功能,不仅如此,开发人员还可以使用新的打包工具(JEP 392) 自行发布,其中包含了 Java 应用程序,以及探索三个孵化功能,矢量 API (JEP 338)、外部链接器 API (JEP 389) 和外部内存访问 API (JEP 389),以及一项预览功能,密封类 ( JEP 397)。
与上一版本相比,全新的jdk16功能更为强大,增加了多项新特性,比如提供了全新的jpackage工具,用于打包自包含的 Java 应用程序;改进内存管理以提高性能,现在支持并发线程堆栈处理,可以将ZGC线程堆栈处理从安全点移动到并发阶段,从而消除了允许并发堆栈处理的最后一个重要瓶颈。还改进网络以提高开发人员的生产力和灵活性,现在可以向 java.nio.channels 包中的套接字通道和服务器套接字通道 API 添加了对主要 UNIX 平台和 Windows 中通用的 UNIX 域套接字的所有功能的支持。另外jdk16还解决未来不兼容的代码,以及支持将 JDK移植到 Windows/AArch64等等。
ps:本次小编带来的是jdk16.0.2 64位官方版,该版本是甲骨文公司推出的最新版本,并且下文有其详细的安装教程和环境变量配置,有需要的小伙伴快来下载使用吧。
1、338:Vector API(孵化器)
2、347:启用 C++14 语言功能
3、357:从 Mercurial 迁移到 Git
4、369:迁移到 GitHub
5、376:ZGC:并发线程堆栈处理
6、380:Unix 域套接字通道
7、386:Alpine Linux 端口
8、387:弹性元空间
9、388:Windows/AArch64 端口
10、389:外链 API(孵化器)
11、390:基于值的类的警告
12、392:打包工具
13、393:外内存访问API(第三孵化器)
14、394:instanceof 的模式匹配
15、395:记录
16、396:默认情况下强封装JDK内部
17、397:密封类(第二次预览)
一、语言增强首先在 JDK 14 中引入,在 JDK 16 中完成
1、JEP 394:instanceof 的模式匹配——通过对 instanceof 运算符的模式匹配来增强 Java 编程语言。
2、JEP 395:Records——通过记录增强 Java 编程语言,记录是充当不可变数据的透明载体的类。记录可以被认为是名义元组。
二、提高开发人员生产力的新工具
JEP 392:打包工具——提供 jpackage 工具,用于打包自包含的 Java 应用程序。
三、改进内存管理以提高性能
1、JEP 387:Elastic Metaspace – 更迅速地将未使用的 HotSpot 类元数据(即元空间)内存返回给操作系统,减少元空间占用空间,并简化元空间代码以降低维护成本。
2、JEP 376:ZGC:并发线程堆栈处理——将 ZGC 线程堆栈处理从安全点移动到并发阶段。这项工作消除了允许并发堆栈处理的最后一个重要瓶颈。
四、改进网络以提高开发人员的生产力和灵活性
JEP 380:UNIX 域套接字通道- 向 java.nio.channels 包中的套接字通道和服务器套接字通道 API 添加了对在主要 UNIX 平台和 Windows 中通用的 UNIX 域套接字的所有功能的支持。UNIX 域套接字用于同一主机上的进程间通信 (IPC)。它们在大多数方面类似于 TCP/IP 套接字,只是它们由文件系统路径名而不是 Internet 协议 (IP) 地址和端口号寻址。
五、解决未来不兼容的代码
1、JEP 396:默认强封装 JDK 内部——在 JDK 9 中,我们强封装了新的内部 API 元素,从而限制了对它们的访问。然而,为了帮助迁移,JDK 9 故意选择不在运行时强封装 JDK 8 中存在的包的内容。 JDK 16 通过默认封装 JDK 的大多数内部元素来收紧这一约束,除了关键的内部 API例如 sun.misc.Unsafe。最终用户仍然可以选择自 JDK 9 以来一直默认的宽松强封装。这将鼓励开发人员从使用内部元素迁移到使用标准 API,以便他们和他们的用户都可以轻松升级到未来的 Java 版本。
2、JEP 390:基于值的类警告——将原始包装类指定为基于值的,并弃用它们的构造函数以进行删除,提示新的弃用警告。提供有关对 Java 平台中任何基于值的类的实例进行同步的不当尝试的警告。
六、孵化和预览功能
1、JEP 338:矢量 API(孵化器) ——提供孵化器模块 jdk.incubator.vector 的初始迭代,以表达矢量计算,这些计算在运行时可靠地编译为支持的 CPU 架构上的最佳矢量硬件指令。
2、JEP 389:外部链接器 API(孵化器) ——引入了一个 API,它提供对原生代码的静态类型、纯 Java 访问。
3、JEP 393: Foreign-Memory Access API (Third Incubator) – 引入了一个 API,允许 Java 程序安全有效地访问 Java 堆之外的外部内存。
4、JEP 397:密封类(第二次预览) ——通过密封类和接口增强 Java 编程语言。密封类和接口限制哪些其他类或接口可以扩展或实现它们。
七、OpenJDK 贡献者的改进
1、JEP 347:启用 C++14 语言特性(在 JDK 源代码中) ——允许在 JDK C++ 源代码中使用 C++14 语言特性,并给出关于哪些特性可以在 HotSpot 代码中使用的具体指导。
2、JEP 357:从 Mercurial 迁移到 Git – 将 OpenJDK 社区的源代码存储库从 Mercurial (hg) 迁移到 Git。
3、JEP 369:迁移到 GitHub – 在 GitHub 上托管 OpenJDK 社区的 Git 存储库。
八、新端口在更多平台上提供对 Java 的支持
1、JEP 386:Alpine Linux Port – 将 JDK 移植到 Alpine Linux,以及在 x64 和 AArch64 架构上使用 musl 作为主要 C 库的其他 Linux 发行版。
2、JEP 388:Windows/Aarch64 端口——将 JDK移植到 Windows/AArch64。
1、删除了具有 1024 位密钥的根证书( JDK-8243559 )
安全库/java.security
以下具有弱 1024 位 RSA 公钥的根证书已从cacerts密钥库中删除:
+ alias name "thawtepremiumserverca [jdk]"
Distinguished Name: EMAILADDRESS=premium-server@thawte.com, CN=Thawte Premium Server CA, OU=Certification Services Division, O=Thawte Consulting cc, L=Cape Town, ST=Western Cape, C=ZA
+ alias name "verisignclass2g2ca [jdk]"
Distinguished Name: OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 2 Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US
+ alias name "verisignclass3ca [jdk]"
Distinguished Name: OU=Class 3 Public Primary Certification Authority, O="VeriSign, Inc.", C=US
+ alias name "verisignclass3g2ca [jdk]"
Distinguished Name: OU=VeriSign Trust Network, OU="(c) 1998 VeriSign, Inc. - For authorized use only", OU=Class 3 Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US
+ alias name "verisigntsaca [jdk]"
Distinguished Name: CN=Thawte Timestamping CA, OU=Thawte Certification, O=Thawte, L=Durbanville, ST=Western Cape, C=ZA
2、删除 java.awt.PeerFixer ( JDK-8253965 )
客户端库/java.awt
java.awt.PeerFixer此版本中已删除非公共类。此类用于为 JDK 1.1.1 之前创建的 ScrollPane 对象提供反序列化支持。
3、删除实验特性 AOT 和 Graal JIT ( JDK-8255616 )
热点/编译器
Java Ahead-of-Time 编译实验工具 jaotc已被删除。使用JEP295定义的 HotSpot VM 选项会 产生不支持的选项警告,否则将被忽略。
实验性的基于 Java 的 JIT 编译器 Graal JEP317已被删除。尝试使用它会产生一个 JVMCI 错误:JVMCI compiler 'graal' not found。
4、不推荐使用的跟踪标志已过时,必须替换为统一的日志等效项( JDK-8256718 )
热点/运行时
当在 Java 9 中添加统一日志时,许多跟踪标志被弃用并映射到它们的统一日志等价物。这些标志现在已过时,将不再自动转换以启用统一日志记录。要继续获得相同的日志输出,您必须明确地将这些标志的使用替换为它们的统一日志等效项。
过时的选项
-XX:+TraceClassLoading
-XX:+TraceClassUnloading
-XX:+跟踪异常
统一日志替换
-Xlog:class+load=info
-Xlog:class+unload=info
-Xlog:异常=信息
5、去除旧椭圆曲线( JDK-8235710 )
安全库/javax.crypto
SunEC 提供程序不再支持以下已过时或未使用现代公式和技术实现的椭圆曲线:
secp112r1, secp112r2, secp128r1, secp128r2, secp160k1, secp160r1, secp160r2, secp192k1, secp192r1, secp224k1, secp224r1, secp256k1, sect113r1, sect113r2, sect131r1, sect131r2, sect163k1, sect163r1, sect163r2, sect193r1, sect193r2, sect233k1, sect233r1, sect239k1, sect283k1, sect283r1, sect409k1, sect409r1, sect571k1, sect571r1, X9.62 c2tnb191v1, X9.62 c2tnb191v2, X9.62 c2tnb191v3, X9.62 c2tnb239v1, X9.62 c2tnb239v2, X9.62 c2tnb239v3, X9.62 c2tnb359v1, X9.62 c2tnb431r1, X9.62 prime192v2, X9.62 prime192v3, X9.62 prime239v1, X9.62 prime239v2, X9.62 prime239v3, brainpoolP256r1 brainpoolP320r1, brainpoolP384r1, brainpoolP512r1
要继续使用这些曲线中的任何一条,用户必须找到第三方替代方案。
精品推荐
同类热门
猜你喜欢
类似软件
jdk1.6 32位/64位官方版128.75M3008人在用 office mac是由microsoft专门Mac用户推出的一款专业办公软件,提供了一套功能强大的组件帮助jdk1.6是java development kit6的简称,也是整个Java的核心,包括了Java运行环境,Java工具和Java基础的
查看热门标签
网友评论0人参与,0条评论
最新排行
SCM Manager客户端(源代码管理服务器)86.32Mv3.7.4 SCM Manager官方版是一款专业的源代码管理服务器,该软件基于Java构建,支持跨平台,是您对源代码管理的最佳帮手,同时还提供了命令行供安装服务、卸载和重启服务,其初始化脚本供自动初始化相关的环境变量,无需手动配置,从web界面即可进行配置,
查看sun java虚拟机(jvm)14.2Mv1.6 JVM:Java Virtual Mechinal(JAVA虚拟机)。JVM是JRE的一部分,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统
查看友善串口调试助手官方版19.18Mv6.0.3 友善串口调试助手是一个小巧且实用的串口调试工具,很多喜欢编程的朋友都在找这种工具,这工具可不好找,今天小编就给大家带来了,该软件可以完美支持Win7操作系统,能够支持常用的50-256000bps波特率,能设置校验、数据位和停止位等等,功能非常强大
查看gamecreator中文版297.21Mv0.99091 game creator中文版是一款功能非常专业的可视化游戏制作工具,通过这款软件,用户不需要编程,只需要利用软件内置的相关素材,即可轻松创建出各种类型的2D游戏,比如回合制、Arpg、横版过关、战棋等等。软件的功能非常的强大,包含了自由的模板系统
查看msys2(类Linux开发环境)100.11Mv2016.10.25官方版 msys2官方版是一款能为windows系统提供类Linux开发环境的软件,同时也是一个基于Cygwin和MinGW-w64的MSYS重写升级版本,主要能为其使用者提供bash shell、Autotools、版本控制软件和MinGW-w64工具链
查看Max space(delphi辅助工具)894Kv1.0官方版 Max space官方版是由鸿翔软件工作室专门为Delphi和C++Builder编程环境制作的一款方便实用的辅助软件。它可以将代码编辑区放到最大,使菜单窗口和Object Inserpreat窗口以及Object Treeview窗口自动隐藏(隐
查看APKSign(APK签名工具)292Kv1.0官方版Dodo APKSign是一款用来制作安卓ROM和APK签名软件,有时候我们下载完APK之后会遇见无法使用,当用户遇到apk无法使用,可能就是没签名,用户可以使用软件对apk进行签名,系统进行了安全限制,下载这款Dodo APKSign来对APK进行签名
查看