羽论社|【JavaSE】Java语言的发展历史
1.Java语言发展简史
1.1Green计划成立
1990年年末 , SUN公司猜想嵌入式系统将会在未来家电领域大显身手 , 于是SUN公司决定让詹姆斯·高斯林(JamesGosling)、迈克·谢里丹(MikeSheridan)和帕特里克·诺顿(PatrickNaughton)于1991年6月启动了“Green计划” 。 准备开发一种能够在各种消费性电子产品(如机顶盒、冰箱、收音机等)上运行的程序架构 。 这样我们可以把指令发给电冰箱、电视机等家用电器 , 进而实现对它们进行控制 , 和它们进行信息交流 。
文章图片
这些电子产品有一个共同的特点:计算处理能力和内存都非常有限 。 所以要求 , 语言必须非常小且能够生成非常紧凑的代码 , 这样才能在这样的环境中执行 。 另外 , 由于不同的厂商选择不同的CPU 。 因此 , 要求该语言不能和特定的体系结构绑在一起 , 要求语言本身是中立的 , 也就是跨平台的 。 所以 , 最初这个语言命名为“Green” , 类似于绿色软件的意思 。
1.2Oak的创立
该团队最初考虑使用C++语言 , 但是C++太过复杂 , 以致很多开发者经常错误使用;而且工作小组使用的是嵌入式平台 , 可用的系统资源及其有限 。 所以BillJoy决定开发一种新语言 , 他提议在C++的基础上开发一种面向对象的环境 , Gosling把这种语言称为''Oak'' , 橡树的意思 。 【起名由来1:Gosling向窗外望去 , 看见一棵老橡树 , 于是决定叫Oak】
1992年夏天 , Green计划已经完成了新平台的部分功能 , 包括Green操作系统、Oak的程序设计语言、类库等 。 1992年11月 , Green计划被转换成''FirstPerson有限公司'' , 一个SUN公司的全资子公司 。 Green项目组决定竞标一个提供视频点播等新型服务的有线电视盒的项目从而将他们的技术推向市场 , 但没有成功 。 之后花费一年半的时间也没有找到买家 。
1.3Java语言的网页浏览器:WebRunner
1994年夏天 , 互联网和浏览器的出现不仅给广大互联网的用户带来了福音 , 也给Oak语言带来了新的生机 。 Gosling立刻意识到这是一个机会 , 于是对Oak进行了小规模的改造 。 之后 , PatrickNaughton和JonathanPayne完成了第一个Java语言的网页浏览器:WebRunner , 从而让浏览器具有在网页中执行内嵌代码的能力 。 【起名由来2:但是后来发现Oak已经被人注册了商标 , 所以改名为Java , 即太平洋上一个盛产咖啡的岛屿的名字】
2.JDK各个版本的特性说明
2.11996年1月23日 , JDK1.0发布
JDK1.0一个小型的专注于网页的版本 , 可用于所有浏览器 。
1995年年初 , SUN公司发布了Java语言 , 并直接把Java语言放到互联网上 , 免费开源给大家使用 。 之后Java开始走红 , 成为了一项广为人知的编程语言 。 SUN虽然推出了Java , 但这只是一种语言 , 如果想要开发复杂的应用程序 , 就必须要有一个强大的开发类库 。 因此 , SUN在1996年年初发布了JDK1.0 。 JDK1.0包含两部分:Java运行环境(即JRE)和Java开发环境(即JDK) 。
新特性及更新修改:
JVM虚拟机
Applet(java小应用程序)
AWT(java图形设计)
缺点:
JDK1.0是纯解释运行 , 使用外挂JIT , 性能比较差 , 运行速度慢 。
2.21997年2月19日 , JDK1.1发布
JDK1.1在用户界面上有所改进 , 重写了事件处理 , 增加JavaBean 。
新特性及更新修改:
JAR(jar包)
JDBC(JavaDataBaseConnectivity)(连接数据库)
JavaBeans(java规范)
RMI(远程调用)
InnerClass(内部类)
Reflection(反射)
在1996年底 , Flash出世了 , 它可以不使用任何语言就可以做出丰富多彩的动画 。 紧接着 , Flash逐渐蚕食了Java在网页上的应用 。 在当时 , Java虽然是互联网上广泛使用的编程语言 , 但它并没有找到自己的准确定位 。 因为Java可以编写网页Applet , 但Flash也一样可以做到 , 而且更快、开发成本更低 。
推荐阅读
- Java|计算机专业的本科生,该选择学习Java技术体系还是.NET技术体系
- 小熊回收站|-链表阻塞队列和数组阻塞队列的异同,Java并发编程
- Java|马化腾登顶中国首富,微信、QQ却都免费使用,腾讯到底咋赚钱的?
- Java|为什么美团骑手总是闯红灯昵
- 阿里巴巴|java三大集合遍历方法
- 编程|JAVA基础-网络编程
- Java|Java中的天使和魔鬼:Unsafe类
- Java|面试官:连多线程问题你都一问三不知,还要我怎么“放水”?
- Java|Java--死锁详解
- Java|锁--JAVA成长之路