Java LTS版本重要升级特性对照表

Java LTS版本重要升级特性对照表

简介

介绍自 java8 以来每个稳定版本都提升了什么新特性。

本文只列出LTS版本,具体包括 Java 8, 11, 17, 21, 25 非LTS版本功能归入下一个LTS版本,不会列出绝大多数预览特性

本文只统计 JVM、重要语法、核心类库、JDK工具的升级特性,不包含某些语法糖语法和不重要类库的升级以及 bug 修复

特性对照表

LTS版本 JVM升级 语法 核心类库 JDK工具
Java 8 Metaspace替代PermGen G1 GC改进 Lambda表达式(invokedynamic) 接口默认方法 Stream API java.time包 Optional CompletableFuture jjs (Nashorn) jdeps依赖分析
Java 11 (含9/10特性) G1成为默认GC 统一JVM日志 Epsilon GC(无操作GC) ZGC实验版 Compact Strings 低开销Heap Profiling 改进的AArch64处理器内在函数 应用类数据共享(AppCDS) 模块系统(Jigsaw) 私有接口方法 局部变量类型推断 集合 API 增强 Process API增强 Reactive Streams (Flow) HTTP Client VarHandles jlink链接器 jshell REPL 多版本JAR 单文件源代码启动 移除JavaFX、CORBA Flight Recorder开源
Java 17 (含12-16特性) ZGC/Shenandoah生产可用 ZGC支持并发栈处理 弃用/删除多个旧GC组合 增强的伪随机数生成器 macOS AArch64移植 严格浮点运算成为默认 密封类(Sealed Classes) Records记录类型 Switch表达式 文本块(Text Blocks) instanceof模式匹配 Socket API重构(基于NIO) 改进NullPointerException消息 上下文感知反序列化过滤器 UNIX域套接字通道 jpackage打包工具 移除Nashorn引擎 强封装JDK内部API macOS Metal渲染管道
Java 21 (含18-20特性) Generational ZGC Generational Shenandoah(实验) 虚拟线程调度优化 Region Pinning for G1 G1巨型对象可移动 对象监视器与锁实现重构 虚拟线程(Virtual Threads) Record模式匹配 Switch模式匹配 Sequenced Collections Key Encapsulation Mechanism API 禁止动态加载代理(默认警告) UTF-8默认字符集 简单Web服务器
Java 25 (含22-24特性) 对象头压缩 ZGC默认支持Generational模式 Generational Shenandoah正式发布 AOT缓存简化 AOT方法性能分析 外部函数与内存 API(FFM) 柔性构造函数体 结构化并发 Stream Gatherers Scoped Values(替代ThreadLocal) Key Derivation Function API Class-File API JFR协作采样 JFR方法计时和追踪 JFR CPU时间性能分析
相关推荐
bksczm3 分钟前
Linux之日志和线程池、内存池
java·开发语言
笨蛋不要掉眼泪10 分钟前
Java虚拟机:对象复活、引用强度与Stop-The-World
java·开发语言·jvm
布朗克16822 分钟前
Go 入门到精通-33-unsafe 与 CGO
开发语言·后端·golang·unsafe·cgo
凤山老林34 分钟前
SpringBoot实战:构建优雅的全局异常处理机制
java·springboot·异常处理
157092511341 小时前
【无标题】
开发语言·python·算法
小Ti客栈1 小时前
Spring Boot 整合 Swagger2 和 Knife4j实现接口文档与可视化调试
java·spring boot·后端
梅头脑1 小时前
ThreadLocalMap里几十万个死Entry——排查了半天OOM,根因就一行finally没写
java
xieliyu.1 小时前
MySQL 存储过程详解:概念、创建与删除全教程
开发语言·数据库·mysql
2zcode1 小时前
项目文档:基于MATLAB最小二乘支持向量机的睡眠分期智能监测系统设计与实现
开发语言·支持向量机·matlab
twcc_come1 小时前
安全策略配置实验报告
开发语言·php