JDK 18 / Java 18 正式发布:九项 JDK 增强

2022-04-15 13:01:04 浏览数 (1)

近日,Oracle 官方发布了 JDK 18 /Java 18 正式版。在性能、稳定性和安全性上面,Java 18 得到了全面的改进提升,其中包括对平台的九项 JDK 增强(JEP),大大提升了开发人员的工作效率。

据了解,JDK 18 是一个短期维护版本,将获得六个月的支持。尽管如此,但它仍然可用于生产环境中。

JDK 18 版本共包括 9 个 JEP,以及数百个较小的增强功能和一千多个 Bug 修复。

1

JDK 改进

默认编码为 UTF-8

将 UTF-8 设置为标准 Java API 的默认字符集。通过此更改,依赖于默认字符集的 API 将在所有实现、操作系统、语言环境和配置中保持一致。

Simple Web Server

一个命令行工具和 API,用于启动仅提供静态文件的最小 Web 服务器。可用于原型设计、临时编码和测试目的,尤其是在教育环境中。

用方法句柄(Method Handles)重新实现核心反射

在 java.lang.invoke 方法句柄的基础上重新实现 java.lang.reflect.Method、Constructor 和 Field。通过处理反射的底层机制,降低 java.lang.reflect 和 java.lang.invoke API 的维护、开发成本。

互联网地址解析 SPI

为主机名和地址解析定义服务提供者接口 (SPI),以便 java.net.InetAddress 可以使用第三方解析器。

Java API 文档中的 JEP 代码片段

为 JavaDoc 的标准 Doclet 引入了 @snippet 标签,以简化在 API 文档中的示例源代码。

2

后续 JDK 更新预告

Vector API (第三次进行孵化)

为开发人员提供 API 用于提供可扩展的 CPU 架构,相比于非可扩展的处理器上在性能更加出众。

外部函数和内存 API(第二次进行孵化)

引入一个 API,使 Java 程序能够与其他的数据进行互操作。通过有效调用外部函数(即 JVM 之外的代码),以及安全访问外部内存(即不受 JVM 管理的内存),该 API 使 Java 程序能够调用本地库并处理本地数据,而没有 JNI 的脆弱性和危险。

Switch 的模式匹配(第二次进行预览)

通过对 switch 表达式和语句的模式匹配,以及对模式语言的扩展来增强 Java 编程语言。将模式匹配扩展到 switch 中,允许针对多个模式测试表达式,每个模式都有特定的操作,这样就可以简洁安全地表达复杂的面向数据的查询。

弃用 Finalization,以便在未来删除

Finalization 目前任然保持默认启用状态,但可以禁用它以方便测试。在未来的版本中,它将被默认禁用,并在之后被彻底删除。依赖于 Finalization 的库和应用程序的维护者应该考虑迁移到其他资源管理技术,如 try-with-resources 语句。

更多详情:https://openjdk.java.net/projects/jdk/18/

Java18下载:https://jdk.java.net/18/

0 人点赞