JDK(Java Development Kit)各版本引入了许多新特性和改进。以下是一些主要版本的亮点:
JDK 8 (发布于 2014)
- Lambda 表达式:简化了单方法接口的实现(即函数式接口)。
- Stream API:用于更简洁地处理集合数据。
- 新日期时间 API:基于 Joda-Time,解决了旧日期 API 的问题。
- 接口的默认方法:允许接口有默认方法实现。
JDK 9 (发布于 2017)
- 模块系统:引入了模块化应用程序的概念,改变了 Java 的打包和依赖方式。
- JShell:交互式Java REPL,用于快速执行Java语句。
- 私有接口方法:在接口中允许私有方法。
- 改进的 Stream API。
JDK 10 (发布于 2018)
- 局部变量类型推断:使用
var
关键字,简化变量的声明。 - 并行全垃圾回收器 G1。
JDK 11 (发布于 2018)
- HTTP Client API:标准化了 HTTP 客户端。
- 运行时编译器 ZGC 和 Epsilon。
- Lambda 参数的局部变量语法。
JDK 12 (发布于 2019)
- 新的垃圾回收器 Shenandoah。
- Switch 表达式的预览。
JDK 13 (发布于 2019)
- Text Blocks(多行字符串)的预览。
- 改进的 switch 语句和表达式。
JDK 14 (发布于 2020)
- Record 类型(数据类)。
- Pattern Matching for instanceof(预览)。
- 可选的垃圾回收器 ZGC 和 Shenandoah。
JDK 15 (发布于 2020)
- 密封类(Sealed Classes)(预览)。
- 隐藏类。
- 垃圾回收器:ZGC 和 Shenandoah 正式成为产品功能。
JDK 16 (发布于 2021)
- Record 类和 instanceof 的模式匹配 正式成为标准特性。
- Vector API(第一阶段,预览)。
- Unix-Domain Socket Channels。
JDK 17 (发布于 2021)
- 密封类 正式成为标准特性。
- 强化的伪随机数生成器。
- 新的 macOS 渲染管道。