美团面试:你了解JDK版本相关特性吗?结果令人尴尬!

开发 后端
Java 8发布于2014年3月14号,从Java 8开始开发代号已经弃用了,所以从Java 8之后已经没有官方的开发代号了。Java 8u201/202是最后一个免费的 Oracle JDK 8版本,Oracle于 2019-01-15 停止免费商用更新。

[[422979]]

关于版本意识,尤其是初学者,很少有人会关注(很多三五年了,照样没怎么关注)。

为什么不关注呢?因为他们关注都是功能点或者知识点。

后来,逐渐的,一部分人在开发中就会遇到各种各样的问题,于是就开始关注版本了,而另外一部分人完全就是为了应付面试。

接下来,我们就来聊聊JDK版本和相关特性。

JDK版本变更历史

下面我呢来整体预览一下JDK版本变更情况:

JDK版本 发布时间
1.0 1996-01-23
1.1 1997-02-19
1.2 1998-12-04
1.3 2000-05-08
1.4.0 2002-02-13
Java SE 5.0 / 1.5 2004-09-30
Java SE 6.0 / 1.6 2006-04
Java SE 7.0 / 1.7 2011-07-28
Java SE 8.0  2014-03-18
Java SE 9.0 2017-09-21
Java SE 10.0 2018-03-21
Java SE 11.0 2018-09-25
Java SE 12.0 2019-02-07
Java SE 13.0 2019-09-26
Java SE 14.0 2020-03-17
Java SE 15.0 2020-09-15

Java 8发布于2014年3月14号,从Java 8开始开发代号已经弃用了,所以从Java 8之后已经没有官方的开发代号了。Java 8u201/202是最后一个免费的 Oracle JDK 8版本,Oracle于 2019-01-15 停止免费商用更新。

很多人,你的是不是年龄还没有JDK大?羡慕

JDK版本功能增强

  • JDK1.0:初代版本,纯解释运行,使用外挂JIT,性能比较差,运行速度慢。
  • JDK1.1:JDBC(Java DataBase Connectivity)、支持内部类、RMI、反射、Java Bean。
  • JDK1.2:集合框架 、JIT 、JFC、Java插件 、JDBC中引入可滚动结果集 、Applet中添加声音支持。
  • JDK1.3:Java Sound API、jar文件索引、对Java的各个方面都做了大量优化和增强 。
  • JDK1.4 :正则表达式,异常链,NIO,日志类,XML解析器,XLST转换器。
  • JDK1.5:自动装箱、泛型、动态注解、枚举、可变长参数、遍历循环。
  • JDK1.6:提供动态语言支持、提供编译API和卫星HTTP服务器API,改进JVM的锁,同步垃圾回收,类加载。
  • JDK1.7:提供GI收集器、加强对非Java语言的调用支持(JSR-292,升级类加载架构)。
  • JDK8 :Lambda 表达式、方法引用、默认方法、新工具、Stream API、Date Time API 、Optional类、Nashorn,JavaScript 引擎。
  • JDK9:1、集合加强;2、私有接口方法;3、垃圾收集机制;4、I/O流加强;5、JShell工具。
  • JDK10:1、局部变量类型推断;2、线程本地握手;3、GC改进和内存管理。
  • JDK11:1、字符串加强;2、HttClient Api;3、用于 Lambda 参数的局部变量语法;4、ZGC
  • JDK12:1、Switch Expressions;2、Shenandoah GC。
  • JDK13:1、switch优化更新;2、文本块升级;3、重新实现旧版套接字API;4、核心库/java.util中:I18N;5、取消使用未使用的内存。
  • JDK14:1、switch优化变更为最终版;2、垃圾回收相关;3、instanceof的模式匹配(预览版);4、删除了安全库java.security.acl API;5、货币格式(优化)。
  • JDK15:将RMI标记为Deprecate,还有Hidden Classes 、Pattern Matching 、Text Blocks 等特性。

尽管JDK版本已经更新到15了,但,据统计目前在开发和线上环境中,使用最多的是JDK8。

本文转载自微信公众号「Java后端技术全栈」,可以通过以下二维码关注。转载本文请联系Java后端技术全栈公众号。

 

责任编辑:武晓燕 来源: Java后端技术全栈
相关推荐

2018-04-23 09:50:54

2021-08-29 18:36:17

MySQL技术面试题

2023-02-27 09:03:23

JavaCAS

2023-07-27 07:28:04

存储链表HashSet

2010-02-05 17:04:31

Android版本

2023-03-28 21:33:53

面试隔离MVCC

2023-05-22 08:17:04

2024-05-16 17:58:30

线程任务线程通讯线程池

2024-06-07 08:10:14

Netty操作系统零拷贝

2009-07-09 16:29:19

JDK版本

2020-11-11 10:05:04

数据库分库分表美团面试

2019-08-26 18:45:59

RedisRedis4.0数据库

2024-05-27 11:35:40

2022-09-08 13:56:49

MySQL事务记录锁

2020-09-26 22:04:32

数据安全传输HTTPSHTTP 协议

2015-11-06 09:39:52

2015-11-06 10:52:51

2016-11-27 20:43:26

云计算迭代

2022-07-26 00:00:22

HTAP系统数据库

2014-04-17 16:42:03

DevOps
点赞
收藏

51CTO技术栈公众号