记录了 JDK5 至 JDK13 的每个版本特性
JDK5 新特性
foreach
迭代方式- 可变参数
- 枚举
- 自动拆装箱
- 泛型
- 注解等重要特性。
JDK6 新特性
Desktop
类和SystemTray
类,- 使用
Complier
API, - 轻量级
HTTPServer
API, - 对脚步语言得支持,
- Common Annotations 等重要特性。
JDK7 新特性
Switch
支持字符串作为匹配条件- 泛型类型自动推断
try-with-resources
资源关闭技巧Object
工具类ForkJoinPool
等重要类与特性。
JDK8 新特性
- 接口得默认方法实现与静态方法
Lambda
表达式- 函数式接口
- 方法与构造函数引用
- 新的日期与时间 API
- 流式处理等重要特性。
JDK9 新特性
- Jigsaw 模块化项目
- 简化进程 API
- 轻量级 JSON API
- 钱和货币 API
- 进程改善和锁机制优化
- 代码分段缓存等重要特性。
JDK10 新特性
- 局部变量得自动推断,
- 改进 GC 和内存管理
- 线程本地握手
- 备用内存设备上的堆分配等重要特性。
JDK11 新特性
- 删除了 Java EE 和 CORBA 模块
- 增加了嵌套的访问控制
- 支持动态类文件常量
- 改进 Aarch64 内联函数
- 提供实验性质得可扩展的的延迟垃圾收集器 ZGC 等重要特性。
JDK12 新特性
- 对 Switch 进行了增强,除了使用 statement 还可以使用 expression, 325:Switch Expressions(Preview)
JDK13 新特性
- 扩展应用程序类-数据共享 JPE 350
- 增强 ZGC 以将未使用的堆内存返回给操作系统 JPE 351
- 使用易于维护和调试的更简单、更现代的实现替换 java.net.Socket 和 java.net.ServerSocket API 使用的底层实现 JPE 353
- 可在生产环境中使用的 switch 表达式,JDK 13 中将带来一个 beta 版本实现 JPE 354
- 将文本块添加到 Java 语言。JPE 355
- 文本块是一个多行字符串文字,它避免了对大多数转义序列的需要,以可预测的方式自动格式化字符串,并在需要时让开发人员控制格式。