了解JDK的最新动态能帮你更好地把握Java的发展方向。JDK目前保持着半年一个版本的发布节奏。下面是一个表格,汇总了近期主要JDK版本的核心信息,方便你快速了解:
| 版本 | 发布日期 | 版本类型 | 核心特性概览 |
|---|---|---|---|
| JDK 25 | 2025年9月* | LTS | PEM支持 (预览)、Stable Values (预览)、移除32位x86端口、结构化并发 (第五次预览)、作用域值 (正式) |
| JDK 24 | 2025年3月 | 非LTS | 分代ZGC、紧凑对象头 (实验)、作用域值 (第四次预览)、简单源文件&实例主方法 (第四次预览)、准备限制JNI使用 |
| JDK 21 | 2023年9月 | LTS | 虚拟线程、结构化并发、记录模式、字符串模板 (预览)、分代ZGC |
| JDK 17 | 2021年9月 | LTS | 密封类、模式匹配switch (预览)、外部函数&内存API (孵化) |
*JDK 25计划于2025年9月发布59
🆕 JDK 25 重要更新
JDK 25 作为一个长期支持(LTS)版本5,值得你关注。它引入了几个值得注意的新特性:
-
JEP 470: 隐私增强邮件(PEM)支持(预览)5:提供了一个 API,用于将加密密钥、证书等对象与 PEM 格式(一种常见的文本编码格式)进行相互转换。这对于需要处理 PEM 格式数据的加密操作很方便。
-
JEP 502: Stable Values(预览)5:引入了“稳定值”的概念。你可以把它理解为一种更灵活、线程安全的常量。它的初始化时机比
final字段更灵活(允许延迟初始化),但一旦初始化,值就不可变,JVM 能据此进行优化,有助于提升性能并避免数据竞争。 -
JEP 506: Scoped Values(作用域值)5:这个特性已经从预览变为正式功能。它主要用于在线程内和线程间安全地共享不可变数据,被看作是
ThreadLocal的一个现代替代品,尤其在大量使用虚拟线程时更具优势15。 -
JEP 505: 结构化并发(第五次预览)5:这个特性仍在预览中。它简化了多线程编程,将多个并发任务视为一个整体工作单元,简化了错误处理和取消操作,提高了代码的可读性和可靠性8。JDK 25 中其 API 有细微调整。
⚠️ 其他更新
-
JEP 503: 移除32位x86端口5:这顺应了计算架构向64位迁移的趋势。
-
一些底层改进:包括分代 Shenandoah 垃圾回收器(实验性)1、紧凑对象头(实验性)1等,旨在提升内存利用率和性能。
815

被折叠的 条评论
为什么被折叠?



