Java_19

Java 19 在 2022 年 9 月 20 日正式发布,Java 19 不是一个长期支持版本,直到 2023 年 3 月它将被 JDK 20 取代,这次更新共带来 7 个新功能。

主要特性

Java 19 带来的 7 个新特性:

JEP 描述
405 Record 模式匹配 (Preview)
425 虚拟线程 (预览)
427 Switch 模式匹配 (三次预览)
422 Linux/RISC-V Port
426 Vector API (四次孵化)
424 外部函数 & 内存 API (Preview)
428 Structured Concurrency (Incubator)

Terwer...大约 1 分钟后端开发JavaSEJava语言新特性下载带来特性模式匹配预览javajdkjdk19java19javase
Java_18

Java 18 在 2022 年 3 月 22 日正式发布,Java 18 不是一个长期支持版本,这次更新共带来 9 个新功能。

主要特性

OpenJDK Java 18 文档:https://openjdk.java.net/projects/jdk/18/

JEP 描述
JEP 400 默认为 UTF-8
JEP 408 简单的网络服务器
JEP 413 Java API 文档中的代码片段
JEP 416 使用方法句柄重新实现核心反射
JEP 417 Vector API(三次孵化)
JEP 418 互联网地址解析 SPI
JEP 419 Foreign Function & Memory API (二次孵化)
JEP 420 switch 模式匹配(二次预览)
JEP 421 弃用完成删除

Terwer...大约 1 分钟后端开发JavaSEJava语言新特性下载文档孵化二次javajdkjdk18java18年月日
Java_17-LTS

Java 17 发布于 2021 年 9 月 14 日。Java 17 版本是切换到新的 6 个月发布周期以来的第二个长期支持(LTS)版本(第一个是 Java 11) [285]


Terwer...大约 2 分钟后端开发JavaSEJava语言新特性下载发布版本支持封装jdkjavajdk17java17javase
Java_16

Java 16 在 2021 年 3 月 16 日正式发布,不是长久支持版本,这次更新没有带来很多语法上的改动,但是也带来了不少新的实用功能。

主要特性

Java 16 随附的 17 个 JEP 分为六个不同类别:

新语言特性

JEP 394,适用于 instanceof 的模式匹配

模式匹配(Pattern Matching)最早在 Java 14 中作为预览特性引入,在 Java 15 中还是预览特性。模式匹配通过对 instacneof 运算符进行模式匹配来增强 Java 编程语言。

模式匹配使程序中的通用逻辑(即从对象中有条件地提取组件)得以更简洁、更安全地表示。


Terwer...大约 8 分钟后端开发JavaSEJava语言新特性特性使用支持提供javajdkjdk16java16javase可以
Java_15

Java 15 在 2020 年 9 月发布,虽然不是长久支持版本,但是也带来了 14 个新功能,这些新功能中有不少是十分实用的。

主要特性

Java 15 新功能:

JEP 描述
JEP 339 爱德华曲线算法(EdDSA)
JEP 360 Sealed Classes(密封类)预览
JEP 371 Hidden Classes(隐藏类)
JEP 372 移除 Nashorn JavaScript 引擎
JEP 373 重新实现 DatagramSocket API
JEP 374 禁用和废弃偏向锁(Biased Locking)
JEP 375 instanceof 类型匹配 (二次预览)
JEP 377 ZGC: 可扩展低延迟垃圾收集器(正式发布)
JEP 378 文本块
JEP 379 Shenandoah: 低停顿时间的垃圾收集器
JEP 381 删除 Solaris 和 SPARC 端口
JEP 383 外部内存访问 API(第二个孵化器)
JEP 384 Records (二次预览)
JEP 385 废弃 RMI 激活机制

Terwer...大约 1 分钟后端开发JavaSEJava语言新特性功能预览发布废弃jdkjavajdk15java15javase
Java_14

JDK 14 发布于 2020 年 3 月 17 日。

主要特性

Java 14 包含了下方列出的新功能,以及“数百个小改进和数千个漏洞修复” [281]

  • JEP-305:使用 instanceof 的模式匹配(预览)
  • JEP-343:打包工具(孵化中)
  • JEP-345:在 G1 中,对不均匀的内存访问(NUMA)情况下的内存申请优化
  • JEP-349:JFR Event Streaming
  • JEP-352:使字节缓冲区能够映射到非易失性存储器上
  • JEP-358:有帮助的 NullPointerExceptions
  • JEP-359:记录类(预览)
  • JEP-361:Switch 表达式(标准)
  • JEP-362:弃用 Solaris 和 SPARC 平台上的移植版本
  • JEP-363:移除 Concurrent Mark Sweep (CMS) 垃圾收集器
  • JEP-364:适用于 macOS 的 ZGC
  • JEP-365:适用于 Windows 的 ZGC
  • JEP-366:弃用 ParallelScavenge + SerialOld 的垃圾收集器组合
  • JEP-367:移除 Pack200 相关的工具及 API
  • JEP-368:文本块(第二预览版本)
  • JEP-370:外部内存访问 API(孵化中)

Terwer...大约 2 分钟后端开发JavaSEJava语言新特性版本修补漏洞预览内存jdkjavajdk14java14javase
Java_13

JDK 13 于 2019 年 9 月 17 日发布。

主要特性

该版本包含以下新特性以及很多的强化和很多的漏洞修补。[272]

  • JEP-350: 动态 CDS 归档[273]
  • JEP-351: ZGC: 取消提交未使用存储器[274]
  • JEP-353: 重新实现旧版 Socket API[275]
  • JEP-354: Switch 表达式(预览阶段)[276]
  • JEP-355: 文本框(预览阶段)[277]

Terwer...大约 1 分钟后端开发JavaSEJava语言新特性修补版本漏洞发布特性javajdkjava13jdk13javase
Java_12

JDK 12 于 2019 年 3 月 19 日发布。

主要特性

该版本包含较多新特性,例如:

  • JEP 189:Shenandoah:一个实验性的低延迟垃圾收集器[262]
  • JEP 230:细粒度性能评审包[263]
  • JEP 325:Switch 表达式(预览阶段)[264]
  • JEP 334:JVM Constants API[265]
  • JEP 340:仅保留一个 AArch64 平台的移植[266]
  • JEP 341:默认类数据共享归档[267]
  • JEP 344:针对 G1,提供可中止的混合垃圾收集[268]
  • JEP 346:针对 G1,及时释放已申请但未使用的内存[269]

Terwer...大约 2 分钟后端开发JavaSEJava语言新特性版本发布特性垃圾jdkjdk12javajava12javase一个
Java_11-LTS

JDK 11 于 2018 年 9 月 25 日发布 [249]

Java 11 为什么重要?

Java 11 是继 Java 8 之后的第二个 LTS(long-term support)版本。 自 Java 11 起,Oracle JDK 将不再免费提供商业用途


Terwer...大约 5 分钟后端开发JavaSEJava语言新特性修补安全性漏洞功能发布jdkjdk11javajava11javase
2
3