jdk17是什么版本

甲骨文(Oracle)最近发布了Java编程语言和虚拟机的第18版。这一版本的主要特性集中在以下9个关键项目(JEP)上:
JEP 400:默认字符集更新为UTF-8,这一改变将极大地便利了多语言环境下的Java应用开发。
JEP 408:简易Web服务器,提供了一个简易的HTTP命令行Web服务器,适用于原型设计、临时编码和测试,特别是在教育环境中。
JEP 413:支持在Java API文档中加入代码片段,这是一个实用的工具,能够帮助开发者更直观地理解API的使用方法。
JEP 416:用方法句柄重新实现核心反射,这将提高Java反射机制的效率和性能。
JEP 417:Vector API(第三个孵化阶段),为Java提供了更高效的向量计算支持。
JEP 418:网络地址解析SPI,提供了一个服务提供者接口以解析主机名和地址,使得.InetAddress可以利用多种解析器。
JEP 419:外部函数&内存API(第二个孵化阶段),改进和丰富了JVM与外部API的互操作性,如C语言库中的接口。
JEP 420:Switch的模式匹配(第二版预览),允许针对多个模式测试目标进行简洁而安全的表达复杂的面向数据的查询。这是一个语言特性的增强,旨在提高开发者的生产效率。
JEP 421:弃用Finalization以备后继删除,这是一个关于垃圾回收机制的改进,旨在优化性能和资源使用。
Java 18的特性节奏相对于之前的版本略低一些。比如Java 17包含14个特性,Java 16包含17个特性等等。尽管此次更新的特性数量减少,但是其仍然对Amber项目、Loom项目和Panama项目的发展提供了持续的支持并推出了一些新的实用工具。
Panama项目是本次更新的重点之一,其中的JEP 417和JEP 419致力于改进和丰富JVM与外部API的互操作性,使Java更好地利用非Java接口。尤其是针对C语言库中的接口,有望带来性能和功能的双重提升。而除了性能的改进之外,Vector API的第三个孵化阶段还针对前两个孵化阶段的反馈进行了增强和改进。外部函数和内存API的第二个孵化阶段也根据Java社区的反馈进行了改进和优化。这些改进旨在提高JVM的性能和兼容性,为开发者提供更高效的开发体验。
Loom项目致力于探索并交付一种新型的轻量级并发编程模型,这种模型易于使用且具备高吞吐量。通过虚拟线程、定界延续和尾调用来实现这一模型,从而提高Java在并发处理方面的性能。本次更新中的JEP 418便是该项目的一个重要成果。网络地址解析SPI则为Java提供了更灵活的网络地址解析功能,使得.InetAddress能够利用更多的解析器进行地址解析。Amber项目致力于探索和孵化更小的Java语言特性以提高生产率,本次更新中的JEP 420便是该项目的成果之一。该特性允许开发者针对多个模式进行测试目标进行简洁而安全的表达复杂的面向数据的查询从而提高开发效率。最后Java工具方面新增了简易Web服务器功能这是一个用于原型设计、临时编码和测试的实用工具特别是在教育场景中。它提供了一个简易的HTTP命令行Web服务器使得开发者能够更方便地部署和测试Web应用。另外关于Java 19的发布目前只有一个预期的JEP即Linux/RISC-V移植预计将在不久的将来发布。Java 18现已可从Oracle下载其他供应商的二进制文件也将在几天内提供。如果您想了解更多信息请访问相关链接了解详情。
