当前位置:   article > 正文

【Java基础教程】特别篇:JDK发展史详解_jdk历史版本

jdk历史版本

1. 起源

1991年,SUN公司开始着手“GREEN”项目,此项目旨在通过软件去控制电器产品的运行。而由于原本打算使用的C++语言应用在此项目中实现较复杂,于是由James Gosling 主导的项目组内工程师们转而设计开发了一个新的平台-OAK(橡树,据说名称来源于办公室外边的一颗橡树)。

图1 Java起源

2. Java诞生

1995年05月,基于 HotJava 浏览器的成功(91到95年之间发生了一些插曲,Java最初发展并不是一帆风顺的,感兴趣的朋友可以自行了解),SUN公司将Oak(橡树平台)改名为Java,并在SunWorld会议上正式发布了java语言,提出了“Write once,Run anywhere"(一次编译,处处运行,说的是Java通过JVM虚拟机跨平台的特性)的宣传概念。

3. JDK1.0

1996年01月,jdk1.0发布。Java语言拥有了第一个正式版本的运行环境。新技术如下:
· JVM
· Applet
· AWT

图2 JVM实现可移植性的原理

4. JDK1.1

1997年02月,创下当时同类会议参与者最多的记录的JavaOne会议召开,jdk1.1发布。 新技术如下:
· JDBC(Java database connectivity )
· 内部类支持(inner class)
· Java Bean
· RMI(remote method invocation)
· 反射(仅用于内省)

图3 反射机制的相关API

5. JDK1.2

1998年12月,jdk1.2发布。此次发布将基础体系拆分为:J2SE 桌面应用开发 、J2EE 企业级应用开发、J2ME 移动终端开发。新技术如下:
· Collections集合框架
· JIT即时编译器(just in time)
· Java Plug-in(Java插件)
· JFC(Java foundation classes),包括swing1.0、Java 2D类库

图4 JIT即时编译工作流程

此外,还包括:对字符串常量做内存映射,对打包的Java文件做数字签名,提供控制授权访问系统资源的策略工具,在JDBC中引入可滚动结果集、BLOB、批量更新和用户自定义类型,在Applet中添加声音支持等。
1999年4月,HotSpot虚拟机发布。

6. JDK1.3

2000年05月,jdk1.3发布。此时 Servlet 规范开始流行,而伴随着互联网的兴起,这项技术同其他 MVC 框架一起成为了 Web1.0时代的网红。新技术如下:
· JavaSound API
· jar文件索引

此外,还对Java的各方面做了一些优化和加强:优化Java类库如数学运算等,新的Timer API。

7. JDK1.4

2002年02月,jdk1.4发布。新技术如下:
· 正则表达式
· 异常链
· NIO
· 日志类 Logging API
· XML解析器
· XSLT转换器
· 参数API
· 断言机制

此外,还包括:引入了Java打印服务、Java web start、JDBC 3.0 API、对IPv6的支持、Image I/O slot machine API等。

图5 NIO的相关API

8. JDK1.5

❗️❗️ 2004年09月,jdk1.5发布。此版本对 Java 语言做出了一些重大的改进,为了表示该版本的重要性, 还将版本直接升级为 5.0。新技术如下:
· 泛型
· 增强循环foreach
· 自动装箱与拆箱
· 类型安全的枚举
· 元注解
· 可变参数


9. JDK6

2006年12月,jdk6发布并且SUN宣布, 将 Java 语言免费开源,并且建立了 OpenJDK 组织对这些源码进行独立管理。新技术如下:
· 脚本语言支持
· 编译 Java Compiler API
· JDBC 4.0 API
· Web Services 微型HTTP服务器 API


10. JDK7

由于诸多因素,SUN公司于09年4月被Oracle公司收购了,受此影响新版本的开发工作也停滞了一段时间。直到2009年02月,jdk7发布。新的版本主要是一些技术优化处理,包括:
泛型对象类型推断、安全的加减乘除运算、map集合支持并发请求、try-with-resource异常处理、在一个语句块捕获多种异常、switch 添加 String 类型判断支持、数字字面量的改进等。

11. JDK8

❗️❗️ 2014年03月,近 20 年中变更最大的版本jdk8发布。这个版本中的 “函数式” 编程实现,可以容易的表述并发执行的计算。新技术如下:
· lambda表达式
· 方法引用
· Stream 流式编程 API
· Optional
· 函数式接口
· 接口定义增强
· 日期与时间的API增强
· JavaScript引擎

图6 JDK5到JDK10的发展过程

12. JDK9

2017年09月,jdk9发布。也是同年8月,Oracle将JavaEE移交给了开源组织eclipse基金会。新技术如下:
· Jigsaw 模块系统
· 轻量级JSON API
· jShell交互工具


13. JDK10

2018年03月,jdk10发布。优化如下:
· 局部变量类型推断
· GC改进和内存管理


14. JDK11

2018年09月,jdk11发布。优化如下:
· ZGC垃圾收集器
· 方法扩展(String、集合类、Stream、File)


✔️ 一图总结

图7 一张图总结JDK发展历史

注:只列举了每次版本升级优化中的部分相对主要的一些技术或优化。

参考链接:
Java发展时间线
Java 历史大版本及其详细特性介绍
jdk1.0至2.0主要特性介绍
JDK下载官网

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/727474
推荐阅读
相关标签
  

闽ICP备14008679号