述说Java的前世今生(java发展史介绍)

createh52个月前 (01-29)技术教程20

大家好,我是程序设计语言Java。对,就是那个叱咤编程江湖24余年,虽被多次传出“病危”,但依旧在TIOBE 编程语言排行榜遥遥领先者。没办法,就是这么强大。

我正式诞生于1995年5月,是由我父亲詹姆斯●高斯林(James?Gosling)在任职Sun Microsystems公司时带领团队推出的。我是一种面向对象的语言,可以撰写跨平台应用软件。

在我成长的24年间,并非一帆风顺,也可以说是命途多舛。2008年,我的老东家Sun公司在经济危机中破产,于2009年4月被Oracle收购。在“后妈”这儿我并不受待见。但我Java是那种认怂的“人”吗,我凭借着自己的魅力不断地攻城略地, 开拓疆土,打下了自己的王国。

如果你对我感兴趣,不防一起进入时空隧道,带你近距离了解Java。

Sun家有子初成长,出身高贵受人捧;奈何家道中落被“卖身”,奋发图强多磨练,TIOBE榜上惹人羡。

我并不是一个经过精心策划、被呵护着出生的产品,我的存在纯属“意外”。1991年4月,我的父亲詹姆斯●高斯林领导的绿色计划(Green?Project)启动,目的是发展一种分布式系统结构,使其能够在机顶盒、冰箱、收音机等各种消费性电子产品上运行。

最开始这个项目组是与我的表姐C++合作的,但对于硬件资源极其匮乏的单片式系统来说,C++程序过于繁冗,而且其中的API极其难用,他们被C++的编译器搞得焦头烂额。随着项目的深入,他们越发的感到,不能和C++继续愉快的合作下去了。

经过各种考量,詹姆斯●高斯林决定创造出一种全新的语言,于是我诞生了。最初我的名字为“Oak”(橡树),据说是以我父亲办公室外的树而命名的。别看我的名字起的“随便”,我的出现可是具有划时代的意义,编写的Applet让网页由静态转为动态,让网站彻底“活”了起来。为什么后来我叫Java了呢?因为“上户口”的时候被告知这个名字已经被一家显卡制造商注册了。经过最终的讨论,我有了一个新名字即Java。

有人问,我的名字具体是什么含义,其实我也不太清楚。原本Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名,而我作为语言,许多库类名称多与咖啡有关:如JavaBeans(咖啡豆)、NetBeans(网络豆)以及ObjectBeans(对象豆)等等。还有一个很明显的线索是,SUN和JAVA的标识也正是一杯正冒着热气的咖啡。所以,我的名字应该是和咖啡有关。

20多年来,我就像爪哇咖啡一样被全球认可,成为企业级应用平台名副其实的霸主,而且逐步深入分布式计算、异常检测、图像识别、分布式端架构等前言领域。

Java发展史

* 1995年Oak语言改名为Java。提出了“Write Once,Run Anywhere”的口号。

* 1996年发布JDK 1.0版本。代表技术:Java虚拟机、Applet、AWT等。

* 1997年发布JDK 1.1 版本。代表技术有JAR文件格式、JDBC、JavaBeans等。

* 1998年发布J2SE 1.2版本。Java技术体系被拆分为3个方向:面向桌面应用开发的J2SE、面向企业级开发的J2EE、面向手机等移动终端开发的J2ME。

* 2000年发布J2SE 1.3版本。提供了大量新的Java 2D API,并且新添加了JavaSound类库。

* 2002年发布J2SE 1.4版本。发布了很多新的技术特性,如正则表达式、异常链、NIO、日志类、XML解析器和XSLT转换器等。

* 2004年发布Java SE 5.0( 1.5)版本改进了Java的内存模型(Java Memory Model,JMM)、提供了java.util.concurrent并发包等。

* 2006年发布Java SE 6.0( 1.6)版本。启用Java SE 6、Java EE 6、Java ME 6的命名方式,提供动态语言支持(通过内置Mozilla Java Rhino引擎实现)、提供编译API和微型HTTP服务器API等。

* 2009年Oracle甲骨文公司收购Sun公司。Java商标从此正式归Oracle所有。

* 2011年,发布Java SE7.0( 1.7)。新增try-with-resources语句等。

* 2014年,发布Java SE8.0( 1.8)。加入了Lambda表达式作为新的语言特性,完善重复注释功能,改进泛型类型推断,新增方法参数反射等。

* 2017年,发布Java SE 9.0版本。支持私有的接口方法,资源的声明可以放到try的外面等。

* 2018年,发布Java 10.0版本。增加局部变量的类型推断、基于时间的版本发布模式、垃圾收集器接口、将 JDK 的多个代码仓库合并到一个储存库中等新特性。

* 2018年,发布Java 11.0版本

* 2019年,发布Java 12.0版本

知识导读:

  1. 编程语言,是计算机的语言,人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。
  2. oracle官网:https://www.oracle.com
  3. 2019年11月TIOBE编程语言榜

注:TIOBE编程社区指数是编程语言流行度的指标,该榜单每月更新一次,指数基于全球技术工程师、课程和第三方供应商的数量。包括流行的搜索引擎,如谷歌、必应、雅虎、维基百科、亚马逊、YouTube和百度都用于指数计算。

相关文章

如何系统全面地自学Java语言?(如何自学javaweb)

建议关注以下几点:计算机基础知识:了解计算机的基本组成部分,包括硬件、操作系统、网络等。这包括对计算机内部结构的理解,以及操作系统的工作原理和网络协议的基础知识。对于硬件,需要了解中央处理器、内存、硬...

Java发展简史(java的发展路线)

关于Java名字的由来和图标,据说是开发Java的人喝咖啡,咖啡来自于印尼的爪哇岛,Java就是爪哇岛的英文名称1995年Java最初由Sun(Stanford University Network...

聊聊软件开发,Java介绍和运行机制

Java是一门用来开发软件的计算机语言,如同汉语是在中国进行交流你的语言,西班牙语是在西班牙交流的语言,编程自然适合计算机沟通,就需要使用计算机认识的语言,那么Java就是其中一个,接下来会依次介绍:...

Java到底是什么?学了我们能做什么?

云端云端源想IT培训,帮你轻松拿offer”嗨~ 今天的你过得还好吗?熬过周三,翻过大山!今天来了解一下Java吧!- 2023.03.29-在互联网信息高速发展的时代,java技术的应用无处不在,网...

JAVA中如何使用正则表达式(java正则表达式教程)

/*** 正则匹配数字和字母* @param str* @return*/private static Matcher matcherNumAndChar(String str) {Pattern p...

学习Java是否需要有扎实的数学基础,包括高数、线性代数等

首先,数学和英语对于编程确实非常重要,但是当前在很多开发场景下,尤其是应用级开发场景下,Java开发并不会涉及到太多数学知识,比如常规的Web开发、安卓开发等,而这一类的开发岗位还非常多,所以即使数学...