1-Java历史-概述

作者: 宠辱不惊的咸鱼 | 来源:发表于2017-12-18 14:42 被阅读13次

    1.0

    • 1991.4
      • 传奇大牛:James Gosling
      • 项目:Green Project
      • 用途:消费性电子产品(机顶盒,冰箱,收音机)
      • 名称:Oak
    • 1995.5.23
      • Oak -> Java
      • Java 1.0
      • Write once, run any where.
    • 1996.1.23
      • JDK 1.0
      • 虚拟机:Sun Classic VM(纯解释执行)
      • 代表特性
        • JVM,Applet,Awt
    • 1996.5
      • 首届JavaOne大会, 每年一度

    1.1

    • 1997.2.19
      • JDK1.1
      • 代表特性
        • JDBC,JAR,JavaBeans,RMI,Inner,Class,Reflection
    • 1999.4.8
      • JDK 1.1.00 ~ JDK 1.1.8
      • 1.1.4-Sparkler
      • 1.1.5-Pumpkin
      • 1.1.6-Abigail
      • 1.1.7-Brutus
      • 1.1.8-Chelsea

    1.2

    • 1998.12.4
      • JDK 1.2-Playground
      • 新命名:J2ME J2SE J2EE
      • 代表特性
        • EJB,Java Plug-in,Java IDL,Swing,JIT
      • 语言和API层面
        • 增加关键字strictfp,集合类
      • 并存三个虚拟机
        • Classic VM
        • HotSpot VM
        • Exact VM(只在Solaris出现过)
        • HotSpot VM和Exact VM内置JIT,Classic VM只能以外挂形式使用JIT
    • 1999.3
      • JDK 1.2.1
    • 1999.7
      • JDK 1.2.2
    • 1999.4.27
      • HotSpot VM发布
        • 由一家小公司Longview Technologies开发,1997年被Sun收购
        • JDK 1.2中作为附加程序存在
        • JDK 1.3开始,成为默认虚拟机

    1.3

    • 2000.5.8
      • JDK 1.3-Kestrel
      • 代表特性
        • 数学运算类库
        • 新的Timer API
        • JNDI开始作为平台级服务(以前仅仅是扩展)
        • 使用CORBA IIOP来实现RMI的通信协议
        • 对Java 2D做了改进
        • 新增JavaSound类库
    • 2001.5.17
      • JDK 1.3.1-Ladybird
      • 从1.3开始,大约每2年发布一个大版本,以动物命名;期间的各个修正版本以昆虫命名。

    1.4

    • 2002.2.13
      • JDK 1.4-Merlin
      • 真正走向成熟的一个版本
      • Compaq,Fujitsu,SAS,Symbian,IBM等公司都有参与,甚至实现自己的JDK 1.4
      • 直至现在,SSH框架都还有支持1.4的版本发布
      • 代表特性
        • 正则表达式
        • 异常链
        • NIO
        • 日志类
        • XML解析器
        • XSLT转换器
    • 2002.9.16
      • JDK 1.4.1 Grasshopper
    • 2003.6.26
      • JDK 1.4.2 Mantis
    • 2002年前后
      • .NET Framework发布,对Java的发展产生较大影响

    1.5

    • 2004.9.30
      • JDK 1.5 Tiger
      • 语法易用性上做出非常大的改进
        • 自动装箱
        • 泛型
        • 动态注解
        • 枚举
        • 可变长参数
        • 遍历循环(foreach循环)
      • 虚拟机和API层面
        • 改进了Java的内存模型(Java Memory Model)
        • 提供了java.util.concurrent并发包
      • 官方声明可以支持Windows9x的最后一个版本

    1.6

    • 2006.12.11
      • JDK 1.6 Mustang
      • 结束从1.2开始的长达8年的J2SE,J2ME,J2EE命名
      • 启用Java SE6,Java ME6,Java EE6命名
      • 代表特性
        • 动态语言支持(通过内置Mozilla Javascript Phino引擎实现)
        • 编译API
        • 微型HTTP服务器API
      • 对JVM做了大量改进
        • 锁与同步
        • 垃圾收集
        • 类加载算法
      • JDK 1.6开始,由于种种原因,两年一个主版本的进度被打破
    • 2012.10.16
      • Java SE6 Update37
    • 2006.11.13
      • JavaOne大会,Sun宣布最终会将Java开源
      • 随后的一年多时间内,陆续将JDK的各个部分在GPL v2(GNU General Public License v2)协议下公开了源码
      • 建立OpenJDK组织对开源源码做单独管理
      • 除了一部分Sun也没有产权的代码外,基本所有代码都已被开源
      • JDK 1.7中,除了版权注释外,OpenJDK 1.7与Sun JDK 1.7的代码已基本一致

    1.7

    • 2009.2.19
      • JDK 1.7-Dolphin
      • 第一个里程碑版本
      • 原本设计中有10个里程碑
        • 于2010.9.9完成
        • Lambda项目(Lambda表达式和函数式编程)
        • Jigsaw项目(虚拟机模块化支持)
        • 动态语言支持
        • GarbageFirst收集器
        • Coin项目(语言细节进化)
    • 2009.4.20
      • Oracle收购Sun(74亿美元)
      • Java商标归Oracle所有
      • Java语言本身不属于哪家公司,由JCP(Java Community Process)组织进行管理,尽管JCP主要是由Sun或者Oracle领导的
      • 此时,Oracle已经拥有三大商业虚拟机中的两个,之前收购BEA得到的JRockit,以及Sun的HotSpot
      • 剩下的1个是IBM的J9
    • 2011.7.28
      • JDK 1.7正式版本在Oracle发布
      • Lambda,Jigsaw,Coin项目部分改进,被延迟
      • 提供G1(试验阶段)
      • 加强对非Java语言调用的支持(JSR292)
      • 升级类加载架构。
    • 2012.4
      • Java SE7 Update4
      • G1从试验阶段转正,开始支持Mac OSX
    • xxxx.x
      • Java SE7 Update6
      • 对Mac OSX达到完全支持
      • 对ARM指令集架构提供支持
    • 2012.10.16
      • Java SE7 Update9

    1.8

    • 2014.3
      • JDK 8

    1.9

    • 2017.9
      • JDK 9

    缩写

    • JEP:JDK Enhancement Proposal(改进提议)
    • JSR:Java Specification Requests(规范提案)
    • JCP:Java Community Process

    相关文章

      网友评论

        本文标题:1-Java历史-概述

        本文链接:https://www.haomeiwen.com/subject/djkmwxtx.html