JDK 22 发布进展与主要特性
JDK 22 是自 JDK 21 之后的第一个非长期支持(LTS)版本,目前已进入第二个发布候选阶段。Oracle Java 平台组首席架构师 Mark Reinhold 宣布,JDK 22 将于 2024 年 3 月 19 日正式发布。JDK 22 的源代码库已于 2023 年 12 月中旬分叉到稳定库,定义了该版本的功能集。关键 bug 可以通过 Fix-Request 流程进行修复。
JDK 22 包含 12 个新特性,分为四类:核心 Java 库、Java 语言规范、HotSpot 和 Java 工具。
核心 Java 库
- JEP 454: 外函数与内存 API
- JEP 457: 类文件 API(预览)
- JEP 460: 向量 API(第七次孵化)
- JEP 461: 流收集器(预览)
- JEP 462: 结构化并发(第二次预览)
- JEP 464: 作用域值(第二次预览)
Java 语言规范
- JEP 447: super(...) 前的语句(预览)
- JEP 456: 未命名变量与模式
- JEP 459: 字符串模板(第二次预览)
- JEP 463: 隐式声明类与实例主方法(第二次预览)
HotSpot
- JEP 423: G1 的区域固定
Java 工具
- JEP 458: 启动多文件源代码程序
项目 Amber
- JEP 463:隐式声明类与实例主方法(第二次预览),旨在简化初学者的编程体验。
- JEP 459:字符串模板(第二次预览),增强了 Java 语言的字符串处理能力。
- JEP 456:未命名变量与模式,简化了记录组件的匹配和变量的使用。
- JEP 447:允许在 super(...) 调用前执行不引用实例的语句,同时保持构造函数的安全性和初始化保证。
项目 Loom
- JEP 464:作用域值(第二次预览),支持在虚拟线程中共享不可变数据。
- JEP 462:结构化并发(第二次预览),简化并发编程,提升错误处理和可观测性。
项目 Panama
- JEP 460:向量 API(第七次孵化),优化向量计算性能。
- JEP 454:外函数与内存 API,支持本地内存和函数的交互,提升了跨平台兼容性。
JDK 23 的潜在特性
JDK 23 计划于 2024 年 9 月发布,目前已有多个 JEP 候选和草案:
- JEP 455:原始类型在模式、instanceof 和 switch 中的使用(预览)。
- JEP 468:派生记录创建(预览),简化记录对象的创建。
- JEP 467:Markdown 文档注释,支持使用 Markdown 编写 JavaDoc 文档。
- JEP 466:类文件 API(第二次预览),提供解析、生成和转换类文件的 API。
- JEP 465:字符串模板,进一步优化字符串处理。
- JEP 401:空限制值对象存储(预览),引入开发者声明的原始类。
- JEP Draft 8326878:向量 API(重新孵化),继续优化向量计算。
- JEP Draft 8325803:灵活构造函数体(第二次预览),允许在构造函数中执行更多操作。
- JEP Draft 8307341:限制 JNI 的使用,提升安全性。
- JEP Draft 8313278:Java 虚拟机的前期编译,提升启动和执行速度。
- JEP Draft 8312611:计算常量(预览),提供更灵活的初始化方式。
- JEP Draft 8283227:JDK 源码结构,帮助开发者适应源码布局。
- JEP Draft 8278252:JDK 打包与安装指南,减少不同 JDK 提供商的安装冲突。
预计 Oracle 将很快为 JDK 23 确定更多 JEP。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。