最近,新版本的JDK又双叒叕发布了,目前已经JDK 14 了,从2017年8月份开始,JDK的更新频率变成了每半年一次,将固定在每年的3月份和9月份发布新版本。
按照这个频率,过不了多久,JDK 20 就要推出了...
最早的JDK发布于1996年,相信比很多读者的年龄都要小,其发布频次如下:
Java 8 与 Java 11 为当前提供支持的LTS(长期支持)版本;
2018年9月,随着 Java 11 的发布,Java 10 自当日起不再被支持。
Oracle 于 2019 年 1 月前为商业用途中的 Java 8 长期支持,而针对非商用的更新将继续提供,直至 2020 年 12 月;
此外,AdoptOpenJDK 也为 Java 8 提供免费更新。
针对 Java 11 的长期支持将不再由 Oracle 提供,而是改由 OpenJDK 社区的 AdoptOpenJDK 提供。
各版本重大更新内容
从Java第一个版本发布到现在,已经有24年了,24年中共发布了14个版本,那么,。让我们细数一下各个版本中增加的 主要特性 有哪些。
JDK 1.0
第一个版本于1996年1月23日发布,叫做为Oak。而真正第一个稳定的版本JDK 1.0.2,被称作Java 1。
JDK 1.1
- 内部类
- JDBC
- JavaBeans
J2SE 1.2
- Java集合框架
- Swing图像化API
- JIT编译器
J2SE 1.3
- HotSpot JVM
- JNDI
- JPDA
- 用于实现动态代理的类
J2SE 1.4
- assert 关键字
- 异常链
- NIO
J2SE 5.0
- 泛型
- 元数据
- 自动封箱、自动拆箱
- 枚举
- 可变参数函数
- 强化for each循环
- Swing
- java.util.concurrent包
Java SE 6
- 支持JDBC 4.0
Java SE 7
- 在switch中使用字符串类型
- try-with-resources
- 新的invokedynamic字节码指令
- 允许在数值字面值中加入下划线
Java SE 8
- Lambda表达式
- Nashorn
- 移除了虚拟机内存管理中的永久代
- 新的日期和时间 API
Java SE 9
- Jigsaw项目中将JDK模块化
- jshell
- jlink
Java SE 10
- 局部变量类型推断
- 适用于G1的多线程完全垃圾回收
Java SE 11
- ZGC
- Epsilon
Java SE 12
- Shenandoah
- Switch 表达式(预览)
Java SE 13
- Text Blocks(预览阶段)
- 动态 CDS 归档
Java SE 14
- Records
- Switch 表达式
- 友好的空指针异常
- 打包工具
新版任你发,我用Java 8
从Java 8推出至今,已经很快的发展到了Java 14了,很多人做过调查,最终结果显示都是Java 8的使用者最多。