Java 25,下一个长期支持(LTS)版本,提供了最终确定的功能,并专注于性能和运行时

Oracle 发布了 Java 编程语言和虚拟机的 25 版本。这是自 JDK 21 以来的首个长期支持(LTS)版本,最终功能集包括 18 个 JEPs,其中 7 个已完成。9 个功能专注于性能和运行时。这些 JEPs 如下:

  • JEP 470:加密对象的 PEM 编码(预览)
  • JEP 502:稳定值(预览)
  • JEP 503:移除 32 位 x86 端口
  • JEP 505:结构化并发(第五次预览)
  • JEP 506:作用域值
  • JEP 507:模式、instanceof 和 switch 中的原始类型(第三次预览)
  • JEP 508:向量 API(第十次孵化)
  • JEP 509:JFR CPU 时间分析(实验性)
  • JEP 510:密钥派生函数 API
  • JEP 511:模块导入声明
  • JEP 512:紧凑源文件和实例主方法
  • JEP 513:灵活构造函数体
  • JEP 514:提前命令行用户体验
  • JEP 515:提前方法分析
  • JEP 518:JFR 协作采样
  • JEP 519:紧凑对象头
  • JEP 520:JFR 方法计时与跟踪
  • JEP 521:分代 Shenandoah

其中 7 个,即作用域值、密钥派生函数 API、模块导入声明、紧凑源文件和实例主方法、灵活构造函数体、紧凑对象头和分代 Shenandoah,在从各自的孵化和预览阶段发展后已完成,除了后两个在 JDK 24 中是实验性功能。

此版本还注重性能和运行时,因为 9 个 JEPs 由Project LeydenHotSpot JVM支持,包括 JEP 483(提前类加载和链接)中的两个 JEPs,加入了 JDK 24 中的 Project Leyden 交付的第一个功能。

Oracle 博客文章中的图表展示了自 JDK 8 以来每个 Java 版本中的 JEPs 数量。

JFR 方法计时与跟踪(JEP 520):通过字节码[Instrumentation](https://docs.oracle.com/en/java/javase/24/docs/api/java.instrument/java/lang/instrument/Instrumentation.html)接口扩展 JFR 以进行方法计时和跟踪,有两个新的 JFR 事件jdk.MethodTimingjdk.MethodTrace

紧凑对象头(JEP 519):将此功能从实验性提升为产品性,可减少 HotSpot JVM 中对象头的大小。

JFR 协作采样(JEP 518):通过在安全点遍历调用栈来提高 JDK 飞行记录器(JFR)的稳定性。

提前方法分析(JEP 515):通过在 HotSpot JVM 启动时立即提供先前运行应用程序的方法执行配置文件,以缩短应用程序预热时间。

提前命令行用户体验(JEP 514):简化创建提前缓存的过程,以加速 Java 应用程序启动。

JFR CPU 时间分析(实验性,JEP 509):增强 JFR 以利用 Linux 内核 CPU 定时器来准确测量 CPU 周期消耗。

JDK 25 启动活动:2025 年 9 月 16 日在加利福尼亚州红木海岸的 Oracle 站点直播,展示了从 JDK 21 到 JDK 25 的性能更新、安全更新、Java AI 库的发展、Java for AI 示例演示以及 Java 平台的增长等。

JDK 26:计划于 2026 年 3 月发布,目前有 3 个 JEPs 被目标定为 JDK 26,包括 JEP 522(G1 GC:通过减少同步来提高吞吐量)、JEP 517(HTTP/3 用于 HTTP 客户端 API)、JEP 504(移除 Applet API),还有 JEP Draft 8358541(用于 TLS 1.3 的后量子混合密钥交换),但草案 JEPs 可能随时更改,正式发布日期预计为 2026 年 3 月,开发者可预期在 2025 年 12 月初进行功能冻结。更多细节可在 InfoQ 新闻故事中找到,JDK 25 现在可从 Oracle 下载,其他供应商的二进制文件也将在未来几天可用。

阅读 136
0 条评论