JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

JDK8-20新特性全面总结,3分钟快速掌握!

wys521 2025-01-29 18:30:30 精选教程 24 ℃ 0 评论

从 JDK8 到 JDK20 更新了很多新特性,实用性都特别强,极大地提高了编码效率。

虽说不一定有升级版本的需要,但作为程序员,保持学习和更新的态度还是有必要的。

本篇文章,一起来全面了解 JDK8 至 JDK20 版本的新特性。

JDK8 新特性(2014年3月)

JDK8 是 Java 平台的一个重要版本,这个算是主流版本,有很多同学都在使用。

JDK8 中最重要的新特性:

  • Lambda 表达式
  • 函数式编程
  • 接口可以添加默认方法和静态方法,也就是定义不需要实现类实现的方法
  • 方法引用
  • 重复注解,同一个注解可以使用多次
  • 引入 Optional 来避免空指针
  • 引入 Streams 相关的 API
  • 引入新的 Date/Time 相关的 API
  • 新增 jdeps 命令行,来分析类、目录、jar 包的类依赖层级关系
  • JVM 使用 MetaSpace 代替了永久代(PermGen Space)

详解篇:JDK8 新特性全面总结(5大最实用新特性及其应用) – Java面试题宝

JDK9 新特性(2017年9月)

  • 模块化系统
  • 私有接口方法
  • JShell REPL
  • 改进的 Stream API
  • 集合工厂方法
  • 进程 API 更新
  • HTTP/2 支持

JDK9 主要是对 API 的优化,例如支持 HTTP2 的 Client API、JVM 采用 G1 为默认垃圾收集器。

JDK10 新特性(2018年3月)

  • 局部变量类型推断:类似 JS 可以通过 var 来修饰局部变量,编译之后会推断出值的真实类型。
  • G1 垃圾回收器的改进:并行 Full GC,来优化 G1 的延迟
  • 应用类数据共享

JDK10 主要特性是通过 var 关键字,来实现局部变量类型推断,使 Java 语言变成弱类型语言、JVM 的 G1 垃圾回收由单线程改成多线程并行处理,降低 G1 的停顿时间。

JDK11 新特性(2018年9月)

  • 新的 String 方法
  • HTTP 客户端 API
  • Epsilon 垃圾收集器
  • Flight Recorder(飞行记录器),基于 OS、JVM 和 JDK 的事件产生的数据收集框架
  • 对 Stream、Optional、集合 API 进行增强

JDK11 主要是对 JDK9 和 JDK10 的完善,对 Stream 、集合等 API 的增强、并且新增了 ZGC 垃圾收集器。

JDK12 新特性(2019年3月)

  • Switch 表达式语法扩展
  • 新增的 GC 算法:Shenandoah GC
  • 新的 String 方法
  • Microbenchmark Suite

JDK13新特性(2019年9月)

  • Switch 表达式进一步增强
  • Text Blocks
  • ZGC 垃圾收集器优化
  • 引入了文本块

JDK13 主要是对 ZGC 优化,释放内存还给操作系统、socket 底层实现引入 NIO。

JDK14 新特性(2020年3月)

  • Records 类
  • 二进制数据流
  • instanceof 类型匹配语法简化
  • NullPointerException 打印优化

JDK15 新特性(2020年9月)

  • Sealed 类和接口
  • Pattern Matching for instanceof
  • Text Blocks 进一步增强
  • 隐藏类 hidden class
  • 密封类 sealed class

JDK16 新特性(2021年3月)

  • Records 进一步增强
  • Vector API
  • 隐式的 Null 检查
  • ZGC 性能优化
  • instanceof 模式匹配

JDK16 主要是将 JDK14、JDK15 的一些特性进行了正式的引入。

JDK17 新特性(2021年9月)

  • 垃圾回收器接口进一步增强
  • Sealed 类和接口进一步增强
  • 新的安全特性
  • Vector API

JDK17 没有引入比较突出的特性,主要是对前面几个版本的完善。

JDK18 新特性(2022年3月)

  • 服务提供者接口
  • 简单的 Web 服务器
  • 矢量 API
  • 代码片段
  • 使用方法句柄重新实现核心反射
  • 默认为 UTF-8 字符集
  • Foreign Function & Memory API (第二孵化器)
  • switch 语句的模式匹配(第二次预览)
  • 对 finalization 的弃用

JDK19 新特性(2022年9月)

  • Record Patterns (Preview) 记录模式
  • 外部函数和内存 API
  • 虚拟线程(千呼万唤始出来)
  • Vector API
  • switch 的模式匹配
  • 结构化并发编程

13. JDK20 新特性(2023年3月)

  • 作用域值(第一次孵化)
  • 记录模式(第二次预览)
  • switch 模式匹配(第四次预览)
  • 外部函数和内存 API(第二次预览)
  • 虚拟线程(第二次预览)
  • 结构化并发(第二次孵化)
  • 向量 API(第五次孵化)

详解篇:Java 20新特性详解(7大核心新特性)  Java面试题宝

以上,是对 JDK8 - JDK20 主要新特性的总结,建议收藏备用。

我是爱分享的程序员宝妹儿,谢谢关注 Java面试题宝

如果觉得不错,请一键三连支持下。

---end---

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表