官术网_书友最值得收藏!

1.3 Java語言概述

1.3.1 Java簡介

Java是由Sun Microsystems公司于1995年5月推出的Java面向對象程序設計語言和Java平臺的總稱,由James Gosling和同事們共同研發。

Java分為三個體系:

Java SE(J2SE,Java2 Platform Standard Edition,Java平臺標準版)。

Java EE(J2EE,Java 2 Platform Enterprise Edition,Java平臺企業版)。

Java ME(J2ME,Java 2 Platform Micro Edition,Java平臺微型版)。

2005年6月,JavaOne大會召開,SUN公司公開Java SE 6。此時,Java的各種版本已經更名以取消其中的數字“2”:J2EE更名為Java EE,J2SE更名為Java SE,J2ME更名為Java ME。

1.3.2 Java主要特性

Java語言之所以能風靡全球,是因為它具有令人喜歡的特色,主要特性如下:

(1)Java語言是簡單的

Java語言的語法與C語言和C++語言很接近,使得大多數程序員很容易學習和使用。另一方面,Java丟棄了C++中很少使用、很難理解、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉換。特別地,Java語言不使用指針,而是使用引用,并提供了自動的垃圾收集機制,使得程序員不必為內存管理而擔憂。

(2)Java語言是面向對象的

Java語言提供類、接口和繼承等面向對象的特性,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實現機制(關鍵字為implements)。Java語言全面支持動態綁定,而C++語言只對虛函數使用動態綁定。總之,Java語言是一個純面向對象的程序設計語言。

(3)Java語言是分布式的

Java語言支持Internet應用的開發,在基本的Java應用編程接口中有一個網絡應用編程接口(java.net),它提供了用于網絡應用編程的類庫,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(遠程方法激活)機制也是開發分布式應用的重要手段。

(4)Java語言是健壯的

Java的強類型機制、異常處理、垃圾的自動收集等是Java程序健壯性的重要保證。對指針的丟棄是Java的明智選擇。Java的安全檢查機制使得Java更具健壯性。

(5)Java語言是安全的

Java通常被用在網絡環境中,為此,Java提供了一個安全機制以防惡意代碼的攻擊。除了Java語言具有的許多安全特性以外,Java對通過網絡下載的類具有一個安全防范機制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節代碼檢查,并提供安全管理機制(類SecurityManager)讓Java應用設置安全哨兵。

(6)Java語言是體系結構中立的

Java源程序(后綴為java的文件)在Java平臺上被編譯為體系結構中立的字節碼格式(后綴為class的文件),然后可以在實現這個Java平臺的任何系統中運行。這種途徑適合于異構的網絡環境和軟件的分發。

(7)Java語言是可移植的

這種可移植性來源于體系結構中立性。另外,Java還嚴格規定了各個基本數據類型的長度。Java系統本身也具有很強的可移植性,Java編譯器是用Java實現的,Java的運行環境是用ANSI C實現的。

(8)Java語言是解釋型的

Java程序在Java平臺上被編譯為字節碼格式,然后可以在實現這個Java平臺的任何系統中運行。在運行時,Java平臺中的Java解釋器對這些字節碼進行解釋執行,執行過程中需要的類在連接階段被載入運行環境中。注意,對.java文件是編譯的,對.class文件是解釋執行的。

(9)Java語言是高性能的

與那些解釋型的高級腳本語言相比,Java的確是高性能的。事實上,Java的運行速度隨著JIT(Just-In-Time)編譯器技術的發展越來越接近于C++。

(10)Java語言是多線程的

在Java語言中,線程是一種特殊的對象,必須由Thread類或其子(孫)類來創建。通常有兩種方法來創建線程;其一,通過實現Runnable接口來創建多線程;其二,從Thread類派生出子類并重寫run方法,使用該子類創建的對象即為線程。值得注意的是,Thread類實現了Runnable接口,因此任何一個線程均有它的run方法,而run方法中包含了線程所要運行的代碼。線程的活動由一組方法來控制。Java語言支持多個線程的同時執行,并提供多線程之間的同步機制(關鍵字為synchronized)。

(11)Java語言是動態的

Java語言的設計目標之一是適應于動態變化的環境。Java程序需要的類能夠動態地被載入運行環境,也可以通過網絡來載入所需要的類。這也有利于軟件的升級。另外,Java中的類有一個運行時刻的表示,能進行運行時刻的類型檢查。

Java語言和C++語言有不少類似之處,學過C++語言的人應該能快速上手Java。

1.3.3 Java的發展史

Java雖是編程界的“老將”,但是寶刀未老,下面看一下它的成長過程:

1995年5月23日,Java語言誕生。

1996年1月,第一個JDK——JDK 1.0誕生。

1996年4月,10個最主要的操作系統供應商聲明將在其產品中嵌入Java技術。

1996年9月,約8.3萬個網頁應用Java技術來制作。

1997年2月18日,JDK 1.1發布。

1997年4月2日,JavaOne會議召開,參與者逾一萬人,創當時全球同類會議規模之紀錄。

1997年9月,JavaDeveloperConnection社區成員超過10萬。

1998年2月,JDK 1.1被下載超過2 000 000次。

1998年12月8日,Java 2企業平臺J2EE發布。

1999年6月,SUN公司發布Java的三個版本:標準版(Java SE,以前是J2SE)、企業版(Java EE,以前是J2EE)和微型版(Java ME,以前是J2ME)。

2000年5月8日,JDK 1.3發布。

2000年5月29日,JDK 1.4發布。

2001年6月5日,NOKIA宣布,到2003年將出售1億部支持Java的手機。

2001年9月24日,J2EE 1.3發布。

2002年2月26日,J2SE 1.4發布,自此Java的計算能力有了大幅提升。

2004年9月30日18:00,J2SE 1.5發布,成為Java語言發展史上的又一里程碑。為了表示該版本的重要性,J2SE 1.5更名為Java SE 5.0。

2005年6月,JavaOne大會召開,SUN公司公開Java SE 6。此時,Java的各種版本已經更名,以取消其中的數字“2”:J2EE更名為Java EE,J2SE更名為Java SE,J2ME更名為Java ME。

2006年12月,SUN公司發布JRE 6.0。

2009年04月20日,甲骨文公司74億美元收購Sun,取得Java的版權。

2010年11月,甲骨文公司對Java社區不夠友善,因此Apache揚言將退出JCP。

2011年7月28日,甲骨文公司發布Java 7.0的正式版。

2014年3月18日,甲骨文公司發表Java SE 8。

主站蜘蛛池模板: 白玉县| 哈巴河县| 紫阳县| 于田县| 无棣县| 五原县| 隆安县| 西安市| 南皮县| 东辽县| 广安市| 江永县| 河津市| 邵东县| 钦州市| 中卫市| 富民县| 耿马| 靖江市| 方正县| 南京市| 岑溪市| 长垣县| 罗平县| 凤山县| 秦安县| 武宁县| 武强县| 天台县| 厦门市| 龙山县| 通化市| 蓬安县| 安达市| 渭源县| 封丘县| 贞丰县| 鄂伦春自治旗| 虞城县| 饶阳县| 绥中县|