Java 15 到目前为止的进展

Java 14在一个月前左右刚刚发布,但是新的Java发布模型的一个强大优点就在于,下一个版本的工作从来没有停止过。这意味着Java 15的发布计划已经开始了。

尽管距离进入特性冻结和rampdown阶段还有几乎两个月的时间,但是Java 15的一些特性已经宣布了。其中包括:

两个新垃圾收集器的标准版本也会出现在特性列表中:

  • ZGC:可扩展、低延迟的垃圾收集器(JEP 377
  • Shenandoah:低暂停时间的垃圾收集器(JEP 379

ZGC是由Oracle开发的,而Shenandoah是由Red Hat开发的。两者提供了类似的功能,那就是非常低的暂停时间和对大规模堆的可扩展性,该功能是以整体的性能为代价获取的(即降低了应用的吞吐量)。

Java 14交付了Amber项目的一些里程碑特性,作为其增量交付的一部分。其中包括第一个 预览发布版的Records标准版的Switch Expressions以及对instanceof Pattern Matching的初始预览版

尽管还没有官方宣布,但似乎Java 15很可能会进一步包含相关的JEP,以继续交付这组特性。

这可能会包含Records的第二个预览版,甚至最终(Standard)版。另外,Sealed Types的目标似乎也是Java 15,只不过这很可能是一个预览特性。

JDK 15的另外一个具有竞争力的特性是JEP 375,也就是instanceof的Pattern Matching的第二个预览版。它通过为记录引入deconstruction模式,为模式匹配提供了另外一个关键步骤,这在Java语言中实现了的其他语言(例如,使用结构化类型实现产品类型的语言)的解构(destructuring)的概念。

Sealed Types、Records以及模式匹配作为概念的引入表明了Java语言一个清晰的发展方向。再加上市场不愿意采用非LTS发布版本,这意味着到2021年9月份,Java 17(LTS)的最终特性将会包含完全成熟的模式匹配和名义代数类型(nominal algebraic type)。

原文链接:

Java 15: The Story So Far

  • 发表于:
  • 本文为 InfoQ 中文站特供稿件
  • 首发地址https://www.infoq.cn/article/FFLxVSGQzlkXQOeAFfPN
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券