甲骨文现在提供JDK 21面向开发人员、用户和企业。
Oracle将为Java 21提供至少八年的长期支持。这一延长的支持期使组织能够灵活地将应用程序投入生产更长时间,只需最少的维护,并最终按照自己的方式进行迁移。根据客户的反馈和在Java生态系统中的使用情况,Oracle还宣布对Java 11的长期支持至少延长到2032年1月,Oracle将提供至少八年的支持和更新。
Java 21中的新特性
除了数以千计的性能、稳定性和安全性更新之外,Java 21还提供了许多新特性和增强功能,15项重要到足以证明他们自己jdk改进提案,涵盖了六个预览功能和一个孵化器功能。
Java 21提供的15个jep分为六个类别,分别对应于关键的长期Java技术项目和硬件支持。
Java 21 新特性
01、 Java 21 新特性 - 序列集合
02、 Java 21 新特性 - 分代 ZGC
03、 Java 21 新特性 - 记录模式
04、 Java 21 新特性 - switch 模式匹配
05、 Java 21 新特性 - 虚拟线程
06、 Java 21 新特性 - 弃用 Windows 32 位 x86 移植
07、 Java 21 新特性 - 准备禁止动态加载代理
08、 Java 21 新特性 - 密钥封装机制 API
09、 Java 21 新特性 - 字符串模板(预览)
10、 Java 21 新特性 - 外部函数和内存 API(第三次预览)
11、 Java 21 新特性 - 未命名模式和变量(预览)
12、 Java 21 新特性 - 未命名类和实例主方法(预览)
13、 Java 21 新特性 - 作用域值(预览)
14、 Java 21 新特性 - 结构化并发(预览)
15、 Java 21 新特性 - Vector API(孵化器第六阶段)
以下是 Java 7 - Java 21 新特性
Java 7 新特性
01、 Java 7 新特性 - Switch中添加对String类型的支持
02、 Java 7 新特性 - 数字字面量的改进
03、 Java 7 新特性 - 异常处理(捕获多个异常) try-with-resources
04、 Java 7 新特性 - 增强泛型推断
05、 Java 7 新特性 - NIO2.0(AIO)新IO的支持
06、 Java 7 新特性 - JSR292与InvokeDynamic
07、 Java 7 新特性 - Path接口(重要接口更新)
08、 Java 7 新特性 - fork/join计算框架
Java 8 新特性
01、 Java 8 新特性 - 收集器 -- java.util.stream.Collectors;
02、 Java 8 新特性 - IntStream,LongStream,DoubleStream;
03、 Java 8 新特性 - Collectors.joining() 详解;
04、 Java 8 新特性 - Runnable Lambda 表达式;
05、 Java 8 新特性 - java.util.Base64 编码解码;
06、 Java 8 新特性 - Lambda 表达式 ( 上 )- 简介;
07、 Java 8 新特性 - Lambda 表达式 ( 中 )- 外部参数;
08、 Java 8 新特性 - Lambda 表达式 ( 下 )范例;
09、 Java 8 新特性 - 方法引用;
10、 Java 8 新特性 - 接口 ( interface ) 默认方法;
11、 Java 8 新特性 - 接口静态方法;
12、 Java 8 新特性 - 集合遍历 forEach() 方法;
13、 Java 8 新特性 - 可选值 java.util.Optional 类;
14、 Java 8 新特性 - Nashorn JavaScript;
15、 Java 8 新特性 - 新日期时间 API ( 上 ) -- 本地日期时间;
16、 Java 8 新特性 - 新日期时间 API ( 中 ) -- 时区日期时间;
17、 Java 8 新特性 - 新日期时间 API ( 下 ) -- 格式化;
18、 Java 8 新特性 - 流 Stream ( 上 );
19、 Java 8 新特性 - 流 Stream ( 下 );
20、 Java 8 新特性 - 函数接口 ( Functional interface );
Java 9 新特性
01、 Java 9 新特性 -- 介绍;
02、 Java 9 新特性 -- 特性简介;
03、 Java 9 新特性 -- 环境配置;
04、 Java 9 新特性 -- 模块化;
05、 Java 9 新特性 -- REPL ( JShell );
06、 Java 9 新特性 -- 改进 JavaDocs;
07、 Java 9 新特性 -- 多版本共存 JAR;
08、 Java 9 新特性 -- 集合不可变实例工厂方法;
09、 Java 9 新特性 -- 接口 ( interface ) 的私有方法;
10、 Java 9 新特性 -- 改进进程管理 API;
11、 Java 9 新特性 -- 增强流 ( Stream ) API;
12、 Java 9 新特性 -- try-with-resources 语句;
13、 Java 9 新特性 -- 增强 @Deprecated 注解;
14、 Java 9 新特性 -- 内部类的方块操作符;
15、 Java 9 新特性 -- Option 类;
16、 Java 9 新特性 -- 多分辨率图像 API;
17、 Java 9 新特性 -- CompletableFuture API ( 上 );
18、 Java 9 新特性 -- CompletableFuture API ( 中 );
19、 Java 9 新特性 -- CompletableFuture API ( 下 );
20、 Java 9 新特性 -- 其它特性;
Java 10 新特性
01、 Java10 新特性 - 介绍;
02、 Java10 新特性 - 基于时间的发布版本控制;
03、 Java10 新特性 - 局部变量类型推断;
04、 Java10 新特性 - 新的API 和选项;
05、 Java10 新特性 - 删除的功能和选项;
06、 Java10 新特性 - 已弃用的功能和选项;
07、 Java10 新特性 - JIT编译器;
08、 Java10 新特性 - 应用程序类数据共享;
09、 Java10 新特性 - 增强的垃圾收集;
10、 Java10 新特性 - Unicode语言标签扩展;
11、 Java10 新特性 - 堆分配;
12、 Java10 新特性 - JDK多个代码仓库合并;
13、 Java10 新特性 - 根证书;
14、 Java10 新特性 - 线程本地握手;
Java 11 新特性
01、 Java11 新特性 - 介绍;
02、 Java11 新特性 - 标准HttpClient;
03、 Java11 新特性 - 免编译启动;
04、 Java11 新特性 - 增强String的API;
05、 Java11 新特性 - 集合转换为数组;
06、 Java11 新特性 - 文件API;
07、 Java11 新特性 - Optional类;
08、 Java11 新特性 - Predicate接口;
09、 Java11 新特性 - Lambda中使用var;
10、 Java11 新特性 - 嵌套类的使用;
11、 Java11 新特性 - 删除-弃用的 API;
Java 12 新特性
01、 Java12 新特性 - 介绍;
02、 Java12 新特性 - Switch表达式;
03、 Java12 新特性 - File的mismatch方法;
04、 Java12 新特性 - getCompactNumberInstance方法;
05、 Java12 新特性 - teeing方法;
06、 Java12 新特性 - String的新方法;
07、 Java12 新特性 - 垃圾收集增强;
Java 13 新特性
01、 Java13 新特性 - 介绍;
02、 Java13 新特性 - Switch表达式;
03、 Java13 新特性 - 文本块;
04、 Java13 新特性 - 文本块方法;
05、 Java13 新特性 - Socket API;
06、 Java13 新特性 - 动态CDS存档;
07、 Java13 新特性 - ZGC增强;
08、 Java13 新特性 - 其他变化;
Java 14 新特性
01、 Java14 新特性 - 介绍;
02、 Java14 新特性 - Switch表达式;
03、 Java14 新特性 - 文本块;
04、 Java14 新特性 - instanceof的模式匹配;
05、 Java14 新特性 - NullPointerException;
06、 Java14 新特性 - 打包工具;
07、 Java14 新特性 - NUMA;
08、 Java14 新特性 - 其他增强功能;
09、 Java14 新特性 - 弃用和删除功能;
Java 15 新特性
01、 Java15 新特性 - 介绍;
02、 Java15 新特性 - sealed密封类;
03、 Java15 新特性 - instanceof的模式匹配;
04、 Java15 新特性 - 文本块;
05、 Java15 新特性 - Record的sealed密封类;
06、 Java15 新特性 - Hidden隐藏类;
07、 Java15 新特性 - 垃圾收集器;
08、 Java15 新特性 - 其他增强功能;
09、 Java15 新特性 - 弃用和删除的功能;
10、 Java15 新特性 - 其他变化;
Java 16 新特性
01、 Java16 新特性 - 介绍;
02、 Java16 新特性 - sealed密封类;
03、 Java16 新特性 - instanceof的模式匹配;
04、 Java16 新特性 - ValueBased类警告;
05、 Java16 新特性 - Record类;
06、 Java16 新特性 - 打包工具;
07、 Java16 新特性 - 垃圾收集器;
08、 Java16 新特性 - 弃用和删除的功能;
09、 Java16 新特性 - 其他增强功能;
Java 17 新特性
01、 Java 17 新特性 - 文本块
02、 Java 17 新特性 - switch表达式
03、 Java 17 新特性 - record关键字
04、 Java 17 新特性 - 密封类 sealed class
05、 Java 17 新特性 - instanceof模式匹配
06、 Java 17 新特性 - Helpful NullPointerExceptions
07、 Java 17 新特性 - 日期周期格式化
08、 Java 17 新特性 - 精简数字格式化支持
09、 Java 17 新特性 - Stream.toList()
10、 Java 17 新特性 - 新的macOS渲染管道
11、 Java 17 新特性 - 增强型伪随机数生成器
12、 Java 17 新特性 - ZGC 的改进
13、 Java 17 新特性 - Unicode 13 的支持
14、 Java 17 新特性 - 针对嵌入式系统的改进
15、 Java 17 新特性 - 生成的代码的性能改进
16、 Java 17 新特性 - HTTP 客户端改进
Java 18 新特性
01、 Java 18 新特性 - 默认 UTF-8 字符编码
02、 Java 18 新特性 - 简单的 Web 服务器
03、 Java 18 新特性 - Javadoc 中支持代码片段
04、 Java 18 新特性 - 使用方法句柄重新实现反射核心功能
05、 Java 18 新特性 - Vector API(三次孵化)
06、 Java 18 新特性 - 互联网地址解析 SPI
07、 Java 18 新特性 - Foreign Function & Memory API (第二次孵化)
08、 Java 18 新特性 - switch 表达式(二次孵化)
09、 Java 18 新特性 - 弃用删除相关
Java 19 新特性
01、 Java 19 新特性 - HashMap 新的构造方法
02、 Java 19 新特性 - switch 类型匹配增强(第三次预览)
03、 Java 19 新特性 - record 的匹配增强(预览功能)
04、 Java 19 新特性 - 虚拟线程(预览功能)
05、 Java 19 新特性 - Foreign Function 和 Memory API (预览功能)
06、 Java 19 新特性 - 结构化并发(孵化器)
07、 Java 19 新特性 - Vector API(第四次预览)
08、 Java 19 新特性 - 弃用和删除的一些 API
Java 20 新特性
01、 Java 20 新特性 - switch 模式匹配(第四预览版)
02、 Java 20 新特性 - Record 模式(第二预览版)
03、 Java 20 新特性 - 虚拟线程(第二个预览版)
04、 Java 20 新特性 - 作用域值 Scoped Value(孵化器)
05、 Java 20 新特性 - 结构化并发(第二个孵化器版本)
06、 Java 20 新特性 - 外部函数 & 内存 API(第二个预览版)
07、 Java 20 新特性 - Vector API(第五个孵化器版本)