转载

Java各版本新特性总结

JDK Beta(1995)

1995年发布alpha和beta Java公开版本,据说非常不稳定。

JDK1.0(1996)

Sun公司发布Java1.0,发布初期叫Oak,后改名为Java(JDK1.0基本上只支持Java语言基础特性)。

JDK1.1(1997)

  1. 引入内部类。

  2. 引入反射。

  3. JAR 文件格式。

  4. 引入JDBC。

  5. 引入RMI。

J2SE 1.2(1998)(里程碑版本)

  1. Java技术体系拆分为: J2SE、J2EE、J2ME。

  2. 引入集合框架。

  3. 引入 JIT 即时编译器。

  4. 引入 EJB 技术。

  5. 引入 Swing。

J2SE 1.3(2000)

  1. 引入 Timer API。

  2. 默认虚拟机改为 HotSpot VM,之前为 Classic VM。

  3. 提升 JNDI 为平台级服务,之前仅仅是一项扩展。

J2SE 1.4(2002)(Java真正走向成熟的版本)

  1. 引入 NIO。

  2. 正则表达式。

  3. 异常链。

  4. 新增 java.util.logging 日志 API。

J2SE 5.0(2004)(Java语言重大升级,版本号更名为5.0)

  1. 泛型。

  2. 枚举。

  3. 注解。

  4. 自动装拆箱。

  5. 静态导入(import static)。

  6. 可变长参数。

  7. JUC。

  8. For-Each 循环。

  9. 改进了 Java 内存模型(这点对并发编程非常重要)。

Java SE 6(2006)(JVM重大升级)

  1. 引入垃圾回收器 G1。

  2. 优化锁与同步、垃圾收集、类加载等。

  3. 提供动态语言支持。

Java SE 7(2011)(SUN被Oracle收购,沉寂5年后由Oracle推出)

  1. 钻石语法(泛型实例化类型自动推断)。

  2. try-with-resources 语法糖。

  3. 多个 catch 块用 | 连接。

  4. switch 中可以使用字符串。

  5. 64 位 JDK 的指针压缩。

  6. 数值可加下划线。

  7. 添加对 ARM 架构的支持(是不是为 Android 的出现提供了基础? )。

  8. JUC 中引入 fork join 编程框架。

Java SE 8(2014)(Java语言重大升级,LTS -- 长期支持)

  1. Lambuda 表达式(闭包,允许我们将函数当成参数传递给某个方法,或者把代码本身当作数据处理)。

  2. 接口中的默认方法和静态方法。

  3. 方法引用。 无参构造器方法引用: 类名::new 或者 Class ::new; 静态方法引用: Class::static_method (接受一个Class类型参数); 类成员方法引用: Class::method (没有参数); 实例成员方法引用: instance::method (接受一个instance对应类型的参数)。

  4. 重复注解(同一个地方可以重复使用多次同一个注解,注解本身需要被 @Repeatable 修饰)。

  5. 升级工具库实现。 HashMap 实现修改、ConCurrentHashMap 实现修改, 新增Stream API(java.util.stream), 新增 Optional 类以解决空指针问题。

  6. 工具包: 类依赖分析工具 jdeps。

  7. JVM方面: 使用 Metaspace(JEP 122)代替方法区持久代(PermGen space)。

Java SE 9(2017)

  1. JVM 类加载机制跟之前的双亲委派模型有了很大差别,趋向模块化设计,即 Jigsaw 项目(参考OSGi? )。

  2. AOT 编译,通过 Graal VM 实现。

  3. 改善锁竞争机制。

  4. http2.0 客户端。

  5. String 类底层不再采用 char 数组存储。

  6. 默认垃圾回收器改为 G1。

Java SE 10(2018.3)

  1. 局部变量类型推断,var 关键字。

Java SE 11(2018.9)(LTS)

  1. 动态类文件常量。

  2. Epsilon 无操作垃圾收集器,常用来做测试。

  3. 引入 ZGC。

Java SE 12(2019.3)

  1. 实验性的低延迟垃圾收集器: Shenandoah。

JDK13新特性详解

你们项目正在用哪个JDK版本? 留言告诉我。

Java各版本新特性总结

Java各版本新特性总结

自荐!

原文  http://mp.weixin.qq.com/s?__biz=MzA4NjgxMjQ5Mg==&mid=2665762765&idx=1&sn=31670b538687c06c4c2ca18688d44590
正文到此结束
Loading...