JDK 9特性说明:
模块化系统(Jigsaw):引入了一种新的模块化系统,允许将Java SE平台和应用程序分割成一组互相依赖的模块。
JShell:引入了一个交互式的Java编程工具,可以在命令行中立即编写和执行Java代码片段。
改进的Java编译器:通过新的Java编译器(jshell)提供更好的错误报告和警告消息。
改进的性能:包括G1垃圾收集器的改进、JIT编译器的改进等,提供更好的性能。
JDK 10特性说明:
局部变量类型推断(var关键字):引入了局部变量的类型推断,可以根据赋值语句自动推断变量的类型。
并行完整垃圾收集器(G1):引入了一个新的并行垃圾收集器(G1),可以更好地处理大内存堆和多处理器环境。
应用级别线程暂停(Thread-Local Handshakes):允许开发人员在代码级别控制线程的执行。
JDK 11特性说明:
HTTP客户端API:引入了一个新的HTTP/2标准的非阻塞的异步HTTP客户端API。
单文件执行程序(Shebang):支持直接在命令行中执行单个Java源文件,无需编译为字节码文件。
Epsilon垃圾收集器:引入了一种实验性的垃圾收集器,用于在性能不是关键因素的场景中实现零开销的垃圾收集。
JDK 12特性说明:
Shenandoah垃圾收集器:引入了一种新的垃圾收集器,旨在减少垃圾收集对应用程序的停顿时间。
Switch表达式:扩展了switch语句,使其可以作为表达式使用,可以更简洁地编写代码。
字符串连接方法增强:引入了一种新的字符串连接方法,可以通过新型的字符串插值语法更方便地拼接字符串。
JDK 13特性说明:
动态CDS归档:引入了动态类数据共享(CDS)的增强功能,可以在运行时生成归档文件。
扩展的Switch表达式:扩展了switch语句的功能,支持更灵活的模式匹配。
文本块:引入了一种新的文本块语法,可以更容易地编写多行字符串。
ZGC垃圾收集器:引入了一种实验性的垃圾收集器,旨在减少垃圾收集的停顿时间。