Java12正式发布主要特性一览

原标题:版本帝Java 12 / JDK 12 正式发布,八大重大更新及部分代码示例

一、简介

去年九月,Oracle推出了一个长期支持的版本Java 11 (18.9 LTS),但是此次发布的Java 12是短期支持版本,可以在下一个版本发布之前获得Oracle的商业支持。自 2 月 7 日开始,Java/JDK 12 就进入了 RC 阶段。按照发布周期,美国当地时间 3 月 19 日Java 12 正式发布面世了!

版本号

java -version
openjdk version "12" 2019-03-19
OpenJDK Runtime Environment (build 12+33)
OpenJDK 64-Bit Server VM (build 12+33, mixed mode)

从version信息可以看出是build 12+33

二、新特性

总的来说是八大重大功能更新:

189 Shenandoah: A Low-Pause-Time Garbage Collector - (Experimental) 低暂停时间的GC
230 Microbenchmark Suite 微基准测试套件
325 Switch Expressions (Preview) Switch表达式
334 JVM Constants API JVM常量API
340 One AArch64 Port, Not Two 只保留一个AArch64实现
341 Default CDS Archives 默认类数据共享归档文件
344 Abortable Mixed Collections for G1 可中止的G1 Mixed GC
346 Promptly Return Unused Committed Memory from G1 G1及时返回未使用的已分配内存

三、新特性简解

JEP 189: Shenandoah: A Low-Pause-Time Garbage Collector (Experimental)
Shenandoah:低暂停时间的 GC(实验性功能)
新增了一个名为 Shenandoah 的 GC 算法,通过与正在运行的 Java 线程同时进行 evacuation 工作来减少 GC 暂停时间。使用 Shenandoah 的暂停时间与堆大小无关,这意味着无论堆是 200MB 还是 200GB,都将具有相同的暂停时间。

JEP 230: Microbenchmark Suite
微基准测试套件
JDK 源码中新增了一套微基准测试套件,开发人员可通过它轻松运行已有的微基准测试并创建新的基准测试。

JEP 325: Switch Expressions (Preview)
Switch 表达式(预览功能)
对 switch 语句进行了扩展,使其不仅可以作为语句(statement),还可以作为表达式(expression),并且两种写法都可以使用传统的 switch 语法,或者使用简化的 “case L ->” 模式匹配语法作用于不同范围并控制执行流。这些更改将简化日常编码工作,并为 switch 中的模式匹配(JEP 305)做好准备。

更多内容请参见原文:https://blog.csdn.net/zhenghhgz/article/details/88735827

猜你喜欢

转载自blog.csdn.net/weixin_43145361/article/details/88824413