Java的历史
1991
绿色计划 (Green Project)
1991 年 1 月
一个名为“Green Project”的项目启动。该项旨在为家用电器提供支持,使这些电器智能化并且能够彼此交互。而且这些家电可以由远程客户端控制。Bill Joy、James Gosling、Mike Sheradin 和 Patrick Naughton 是该项目的核心成员。

橡树(Oak)
1991 年 2 月
James Gosling 是该计划的软件负责人和架构师。他最初的目标是为“绿色计划”找到一个适合的语言来运行。他选择了C++,并对有需要的地方进行了扩展。但是这些功能不能满足计划的需要,因此建立一门新的语言成为当务之急。他开始夜以继日地忙于新语言的开发,并将其命名为“Oak”,因为他办公室窗外有一棵橡树。
硬件原型
1991 年 4 月
SPARC 工作站 10 的架构师 Ed Fran k 加入到绿色计划中,并领导硬件开发工作。该计划的目的是开发一个硬件原型,展示“绿色计划”的功能。该计划命名为 star-seven (*7)。*7 计划的成员有 Craig Forrest、Al Frazier、Ed Frank、James Gosling、Patrick Naughton、Joe Parlang、JonPayn、 MikeSheridan 和 Chris Warth。
解释器
1991 年 6 月
James Gosling 开发了 Oak 的解释器。

1992
Java 命名
1992 年 3 月
由于 Oak 已被用作另一种已存在的编程语言名称,因此必须选一个新的名字——它就是 Java,灵感来源于咖啡。

Star-Seven 原型
1992 年 9 月
Star-seven (*7) 带 GUI 的工作原型完成了,并向大家展示了其功能。与此同时绿计划也建立了一套新的语言、一个操作系统、一个硬件平台和一套接口。下面是如*7 原型的 PDA 样机,并由 James Gosling 亲自演示它。我推荐你完整观看整个视频,感受这来自 1991-1992 年的神奇。
视频链接:http://www.youtube.com/watch?feature=player_embedded&v=1CsTH9S79qI
FirstPerson
1992 年 11 月
Green 计划被转化成了“FirstPerson 有限公司”,并作为一个独立实体合并到 Sun 的子公司。
1993
电视机顶盒
1993 年 2 月
FirstPerson 试图从时代华纳获得一个电视机顶盒交互系统的一揽子订单。在那时,由于绿色计划不是很成功,随即失去了时代华纳的订单。于是开发的重心从家庭消费电子产品转到了电视盒机顶盒的相关平台上。
应用开发平台
1993 年 9 月
Arthur Van Hoff 加入了开发组,他的工作是交互平台上的应用开发。
1994
Liveoak 计划
1994 年 6 月
实际上电视交互市场并没有给 FirstPerson 公司带来收益,最终它倒闭了。员工都合并到 Sun 公司。Liveoak 计划启动了,它的目标是使用 Oak 语言设计出一个操作系统。
网络浏览器时代
1994 年 7 月
Patrick Naughton 设计了一个 Web 浏览器,该浏览器内部使用 Java。Liveoak 计划进行了调整,使得 Oak 语言支持互联网。
HotJava
1994 年 9 月
Naughton 和 Jonatha Payne 开始从事名为 HotJava 的以 Java 语言为基础的网页浏览器项目,该项目获得了管理层的广泛认可。
Java 编译器
1994 年 10 月
由 Van Hoff 编写的 Java 编译器用于 Java 语言,之前的编译器由 James Gosling 使用C语言编写。
1995
正式发布
1995 年 5 月
在 SunWorld 大会,Sun 公司正式介绍了 Java 和 HotJava。

Netscape 支持
1995 年 6 月
一次重大突破——Netscape 在它的浏览器中支持 Java。
HotJava
1995 年 9 月
由 Sun 组织的第一次 Java 开发者大会在纽约召开。
Oracle 支持
1995 年 10 月
Oracle 在其将发布的 WWW 网页系统中包含了一个兼容的 Java 浏览器。
Microsoft 支持
1995 年 12 月
更广泛行业接受的信号,Microsoft 在其 IE 浏览器中支持 Java。
1996
1. 0 版本发布
1996 年 1 月
JDK1.0 版本发布
1997
1. 1 版本发布
1997 年 2 月
JDK1.1 版本发布。主要特点是 JDBC、RMI、内部类。
1998
1. 2 版本发布
1998 年 12 月
JDK1.2 版本发布,命名为 Playground。该版本通常被称为 Java 2 版本,是见证重大转变的最流行版本。主要特点是集合框架、JIT 编译器、策略工具、Java 基础类、Java 二维类库和 JDBC 改进。
2000
1. 3 版本发布
2000 年 5 月
JDK1.3 版本发布,命名为 Kestrel。
2002
1. 4 版本发布
2002 年 2 月
J2SE1.4 版本发布,命名为 Merlin。主要特点是 XML 处理、Java 打印、支持日志、JDBC 3.0、断言和正则表达式处理。
2004
5. 0 版本发布
2004 年 9 月
J2SE5.0 发布,命名为 Tiger。主要特点是支持泛型、自动装箱、注释处理、Instrumentation。如果想获得关于所有 Java JDK 的版本和它的特点详情,请参考我的旧文。
2006
Java/Jdk (半)公开源码
2006 年 11 月
Java 宣布将会公开源码,引起了广泛争议。由于设计的证书违背了通常的源码开放条款。或许我们可以称其为半公开。
6. 0 版本发布
2006 年 12 月
Java SE 6 版本发布,命名为 Mustang。主要特点是支持脚本语言、JDBC4.0、Java 编译 API 并整合了 Web 服务。
2010
Oracle 收购 Sun
2010 年 1 月
Oracle 收购 Sun 公司及其产品。现在 Java 由 Oracle 控制。
苹果不再支持 Java
2010 年 10 月
Steve Jobs 声称,苹果将来不再支持 Java。请阅读 James Gosling“关于 Steve Jobs 声明的评论”。
2011
7. 0 版本发布
2011 年 7 月
Java SE 7.0 版本发布,命名为 Dolphin。这个版本距上次发布有 5 年之久,并且只有这个版本花费了这么久。主要特点是支持动态语言、Java nio 包、多重异常处理、try with resourece 功能和诸多小的增强。
Java的历史的更多相关文章
- java各历史版本官网下载
java各历史版本官网下载: http://www.oracle.com/technetwork/java/javase/archive-139210.html
- Java的历史和大事记
Java的历史 在上世纪90 年代初,sun 公司有一个叫做Green 的项目,目的是为家用消费电子产品开发一个分布式代码系统,这样就可以对家用电器进行控制,和它们进行信息交流.詹姆斯·高斯林(Jam ...
- Java基础笔记(1) 语言 JAVA的历史 Java的搭建环境
本文除了搭建是重点,其他的都当阅读小说一样去看就好了,不想看可以直接抓住重点,我会改变颜色勾出重点! 英语是人与人交流沟通的重要方式之一.JAVA:是人与计算机沟通交流重要方式之一.我们除了用java ...
- Java 发展历史
Java自1995诞生,至今已经20多年的历史. Java的名字的来源:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名.Java语言中的许多库类名称,多与咖啡有关,如JavaBeans(咖啡豆 ...
- Java的历史及发展
Java之父:詹姆斯·高斯林 (James Gosling) Java自1995诞生,至今已经20多年的历史. Java的名字的来源:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名.Java语 ...
- Java版本更新历史(ing)
历史版本特性 JDK Version 1.0 开发代号为Oak(橡树),于1996-01-23发行. JDK Version 1.1 于1997-02-19发行. 引入的新特性包括: 引入JDBC(J ...
- Java发展历史
1991年1月 Sun公司成立了Green项目小组,专攻智能家电的嵌入式控制系统 1991年2月 放弃C++,开发新语言,命名为"Oak" 1991年6月 JamesGosling ...
- java 泛型历史遗留问题
Map<String,Integer> hashMap = new HashMap<String,Integer>(); hashMap.put(); // hashMap.p ...
- JAVA发展历史!
前言 自1946年2月14日世界上首款计算机问世,第一代计算机语言“机器语言”便诞生了,它使用的是最原始的穿孔卡片,这种卡片上使用的语言只有专家才能理解,与人类语言差别极大.这种语言本质上是计算机能识 ...
随机推荐
- 在php中写接口时 对json格式的转换 简单的方法
方法 一 方法二 可以通过urlencode();遍历出来
- thinkphp关联模型的注意大小写
TP框架报错: think\Model:relation方法不存在 首先检查大小写,尤其是模型名称首字母大写 /**** 模型名字QqModel.class.php ***************** ...
- nuint笔记
注意:单元测试中,Case 与 Case 之间不能有任何关系 测试方法不能有返回值,不能有参数,测试方法必须声明为 public [TestFixture] //声明测试类 [SetUp] //建立, ...
- Redis运维的一些常用的命令总结
最近一直管理部门的一些redis的服务器,所以现在来总结一下redis的一些常用的运维命令: 1.time 显示服务器的时间,时间戳(秒) 微秒数 redis 127.0.0.1:6380> ...
- {VS2010C#}{WinForm}{ActiveX}VS2010C#开发基于WinForm的ActiveX控件
在VS2010中使用C#开发基于WinForm的ActiveX控件 常见的一些ActiveX大部分是使用VB.Delphi.C++开发,使用C#开发ActiveX要解决下面三个问题: 使.NET组件可 ...
- Framework7--Test
<!doctype html> <html> <head> <title>{{title}}</title> <meta charse ...
- 动态生成dropdownlist
<td colspan=" id="td_ddl" runat="server"> </td> 后台代码: #region 动 ...
- CSS声明顺序
CSS对元素样式进行声明,虽然一条规则中的声明可以按照任何顺序写出来,但是还是应该有个优先级的顺序. 如下的声明顺序摘抄自<CSS设计指南>,优先级顺序如下: display及相关声明 p ...
- Hibernate 一级二级缓存
1.一级缓存与session关联,session关闭时,缓存数据消失: 2.一级缓存无法自我控制缓存的数量,需考虑缓存溢出: 3.二级缓存与sessionFactory关联,当sessionFacto ...
- java代码性能优化总结(转载)
原文链接:http://developer.51cto.com/art/201511/496263.htm 前言 代码优化,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改 ...