JAVA发展历程
?Java是一門面向?qū)ο蟮木幊陶Z言,不僅吸收了C++語言的各種優(yōu)點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。Java語言作為靜態(tài)面向?qū)ο缶幊陶Z言的代表,極好地實現(xiàn)了面向?qū)ο罄碚?#xff0c;允許程序員以優(yōu)雅的思維方式進行復(fù)雜的編程?。
Java具有簡單性、面向?qū)ο蟆⒎植际?、健壯性、安全性、平臺獨立與可移植性、多線程、動態(tài)性等特點?。Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等?。
Java之父——James Gosling
詹姆斯·高斯林 (James Gosling)是一名軟件專家,1955年5月19日出生于加拿大,Java編程語言的共同創(chuàng)始人之一,一般公認他為“Java之父”。
1977年獲得了加拿大卡爾加里大學(xué)計算機科學(xué)學(xué)士學(xué)位,1983年獲得了美國卡內(nèi)基梅隆大學(xué)計算機科學(xué)博士學(xué)位。
?JAVA發(fā)展歷程
Java 的歷史要追溯到 1991 年, 由 Sun 公司帶領(lǐng)的開發(fā)小組, 想設(shè)計一種小型的計算機語言,主要用于有線電視轉(zhuǎn)換盒這類的消費設(shè)備。 由于這類設(shè)備的處理能力和內(nèi)存都非常有限,所以語言就必須設(shè)計的非常小且能夠生成緊湊的代碼。 另外,由于不同的廠商會選擇不同的 CPU, 因此很重要的一點就是這種語言不應(yīng)該與任何特定的體系結(jié)構(gòu)綁定。這個項目被命名為 “Green”。
Sun 公司的人都有 Unix 的應(yīng)用背景, 所以開發(fā)的語言用了 C++ 為基礎(chǔ)。并把這種語言稱為 “Oak”, 后來, Sun 公司的人后來發(fā)現(xiàn), Oak 是一種已經(jīng)有的計算機語言的名字, 于是, 將其改名為 “Java”。
1995年5月23日,Java語言誕生
1996年1月,第一個JDK-JDK1.0誕生1996年4月,10個最主要的操作系統(tǒng)供應(yīng)商申明將在其產(chǎn)品中嵌入JAVA技術(shù)1996年9月,約8.3萬個網(wǎng)頁應(yīng)用了JAVA技術(shù)來制作
JDK 1.0 開發(fā)代號為 Oak ( 橡樹 )。
1997年2月18日,JDK1.1發(fā)布
JDK 1.1 引入的新特性包括:
-
引入JDBC(Java Database Connectivity);
-
支持內(nèi)部類;
-
引入Java Bean;
-
引入RMI(Remote Method Invocation);
-
引入反射(僅用于內(nèi)省)。
1997年4月2日,JavaOne會議召開,參與者逾一萬人,創(chuàng)當(dāng)時全球同類會議規(guī)模之紀錄1997年9月,JavaDeveloperConnection社區(qū)成員超過十萬1998年2月,JDK1.1被下載超過2,000,000次
1998年12月8日,JAVA2企業(yè)平臺J2EE發(fā)布
1999年6月,SUN公司發(fā)布Java的三個版本:標準版(J2SE)、企業(yè)版(J2EE)和微型版(J2ME)
2000年5月8日,JDK1.3發(fā)布
2000年5月29日,JDK1.4發(fā)布
2001年6月5日,NOKIA宣布,到2003年將出售1億部支持Java的手機
2001年9月24日,J2EE1.3發(fā)布
JDK 1.3 開發(fā)代號為Kestrel(紅隼)
-
引入的新特性包括:
-
引入Java Sound API;
-
jar文件索引;
-
對Java的各個方面都做了大量優(yōu)化和增強。
2002年2月26日,J2SE1.4發(fā)布,自此Java的計算能力有了大幅提升
JDK 1.4 開發(fā)代號為Merlin(隼)
-
引入的新特性包括:
-
XML處理;
-
Java打印服務(wù);
-
引入Logging API;
-
引入Java Web Start;
-
引入JDBC 3.0 API;
-
引入斷言;
-
引入Preferences API;
-
引入鏈式異常處理;
-
支持IPv6;
-
支持正則表達式;
-
引入Image I/O slot machine API。
2004年9月30日18:00PM,J2SE1.5發(fā)布,成為Java語言發(fā)展史上的又一里程碑。為了表示該版本的重要性,J2SE1.5更名為Java SE 5.0
JDK 1.5 開發(fā)代號為Tiger(老虎)
-
引入的新特性包括:
-
引入泛型;
-
增強循環(huán),可以使用迭代方式;
-
自動裝箱與自動拆箱;
-
類型安全的枚舉;
-
可變參數(shù);
-
靜態(tài)引入;
-
元數(shù)據(jù)(注解);
-
引入Instrumentation。
2005年6月,JavaOne大會召開,SUN公司公開Java SE 6。此時,Java的各種版本已經(jīng)更名,以取消其中的數(shù)字“2”:J2EE更名為Java EE,J2SE更名為Java SE,J2ME更名為Java ME
2006年12月,SUN公司發(fā)布JRE6.0
JDK 1.6 開發(fā)代號為Mustang(野馬)
-
引入的新特性包括:
-
支持腳本語言;
-
引入JDBC 4.0 API;
-
引入Java Compiler API;
-
可插拔注解;
-
增加對Native PKI(Public Key Infrastructure)、Java GSS(Generic Security Service)、Kerberos和LDAP(Lightweight Directory Access Protocol)的支持;
-
繼承Web Services;
-
做了很多優(yōu)化。
2009年12月,SUN公司發(fā)布Java EE 6
2010年11月,由于Oracle公司對于Java社區(qū)的不友善,因此Apache揚言將退出JCP
2011年7月28日,Oracle公司發(fā)布Java SE 7
JDK 1.7 開發(fā)代號是Dolphin(海豚)
-
引入的新特性包括:
-
switch語句塊中允許以字符串作為分支條件;
-
在創(chuàng)建泛型對象時應(yīng)用類型推斷;
-
在一個語句塊中捕獲多種異常;
-
支持動態(tài)語言;
-
支持try-with-resources;
-
引入Java NIO.2開發(fā)包;
-
數(shù)值類型可以用2進制字符串表示,并且可以在字符串表示中添加下劃線;
-
鉆石型語法;
-
null值的自動處理。
2014年3月18日,Oracle公司發(fā)表Java SE 8
JDK 1.8 開發(fā)代號是Spider(蜘蛛)
-
支持 lambda支持;
-
增強日期與時間API的功能;
-
對垃圾回收的性能也進行了改進;
-
并且移除了permgen區(qū)。
-
Lambdas表達式與Functional接口
-
接口的默認與靜態(tài)方法
-
方法引用
-
重復(fù)注解
-
更好的類型推測機制
-
擴展注解的支持
2017年7月,Oracle 公司將發(fā)布 JDK 9。這個版本算是比較大的調(diào)整,加入了很早之前就規(guī)劃的模塊化功能。并且對整個 JDK 基于模塊進行了重新編寫。Java 9 提供了輕量級 JSON API; 使用 G1 作為默認的垃圾收集器,替代了之前默認使用的 Paralel GC; 引入了 jShell 這個交互性工具。并且全面支持 HTTP 2.0。
也就是在這一年,2017 年 8 月,Oracle 決定將 Java EE 移交給開源組織,最后 Eclipse 基金會接手。
由于甲骨文不允許開源組織用 Java 的名號,于是 Eclipse 選出了 "Jakarta EE" 和 "Enterprise Profile" 兩個后續(xù)名字,最終前者以 64.4% 的票數(shù)獲勝。
也就是說,Java EE 已經(jīng)正式更名為 Jakarta EE(雅加達)。
Oracle公司發(fā)表Java SE 9
2018年,從 2018 年開始, 每6個月就會發(fā)布一個 Java 版本, 以更快地引入新特性。這里又分為 LTS 版和最新版。 生產(chǎn)環(huán)境中最好只使用 LTS 版本, 因為這個版本更加穩(wěn)定, 維護周期更長。2018 年 3 月 21 日, Java 10 發(fā)布。2018 年 9 月 25 日, Java 11 LTS 發(fā)布。
2019 年,2019 年 2 月 Java 12 發(fā)布2019 年 9 月 Java 13 發(fā)布。
2020 年,2020 年 3 月 17 日,Java 14 發(fā)布。2020 年 9 月 15 日,Java 15 發(fā)布。
2021 年,2021 年 3 月 16 日,Java SE 16 發(fā)布。2021 年 9 月 14 日,Java SE 17 LTS 發(fā)布。
這個是繼 Java 11 之后的有一個長期支持版本, 并且直接支持到了 2029 年 9 月。這可能是下一個 Java 8。所以學(xué)習(xí)的話, 可以直接學(xué)習(xí)這個版本。當(dāng)然也可以直接學(xué)習(xí) Java 17 這樣的話, 對于工作來說 3 年之內(nèi)不會有大的變化。
總結(jié)
- 上一篇: 企业中常见的杀毒软件
- 下一篇: MSN下载2010最新版