Java是什麼?Java的特點有哪些?

Java 是近 10 年來計算機軟件發展過程中的傳奇,其在衆多開發者心中的地位可謂“愛不釋手”,與其他一些計算機語言隨着時間的流逝影響也逐漸減弱不同,Java 隨着時間的推移反而變得更加強大。

從首次發佈開始,Java 就躍到了 Internet 編程的前沿。後續的每一個版本都進一步鞏固了這一地位。如今,Java 依然是開發基於 Web 的應用程序的最佳選擇。此外,Java 還是智能手機變革的推手,Android編程採用的就是 Java 語言。

什麼是Java語言

簡單地說,Java 是由 Sun Microsystems 公司於 1995 年推出的一門面向對象程序設計語言。2010 年 Oracle 公司收購 Sun Microsystems,之後由 Oracle 公司負責 Java 的維護和版本升級。

其實,Java 還是一個平臺。Java 平臺由 Java 虛擬機(Java Virtual Machine,JVM)和 Java 應用編程接口(Application Programming Interface,API)構成。Java 應用編程接口爲此提供了一個獨立於操作系統的標準接口,可分爲基本部分和擴展部分。在硬件或操作系統平臺上安裝一個 Java 平臺之後,Java 應用程序就可運行。

Java 平臺已經嵌入了幾乎所有的操作系統。這樣 Java 程序只編譯一次,就可以在各種系統中運行。Java 應用編程接口已經從 1.1x 版本發展到 1.2 版本。常用的 Java 平臺基於 Java 1.6,最新版本爲 Java 1.8。

Java 發展至今,就力圖使之無所不能。在世界編程語言排行榜中,近年來 Java 一直穩居第一名,比第二名的C語言高出幾個百分點。
 

世界編程語言排行榜


按應用範圍,Java 可分爲 3 個體系,即 Java SE、Java EE 和 Java ME。下面簡單介紹這 3 個體系。

1. Java SE

Java SE(Java Platform Standard Edition,Java 平臺標準版)以前稱爲 J2SE,它允許開發和部署在桌面、服務器、嵌入式環境和實時環境中使用的 Java 應用程序。Java SE 包含了支持 Java Web 服務開發的類,併爲 Java EE 提供基礎,如 Java 語言基礎、JDBC 操作、I/O 操作、網絡通信以及多線程等技術。圖 1 所示爲 Java SE 的體系結構。
 

Java SE的體系結構
圖1 Java SE的體系結構

2. Java EE

Java EE(Java Platform Enterprise Edition,Java 平臺企業版)以前稱爲 J2EE。企業版本幫助開發和部署可移植、健壯、可伸縮且安全的服務器端 Java 應用程序。Java EE 是在 Java SE 基礎上構建的,它提供 Web 服務、組件模型、管理和通信 API,可以用來實現企業級的面向服務體系結構(Service Oriented Architecture,SOA)和 Web 2.0 應用程序。

3. Java ME

Java ME(Java Platform Micro Edition,Java 平臺微型版)以前稱爲 J2ME,也叫 K-JAVA。 Java ME 爲在移動設備和嵌入式設備(比如手機、PDA、電視機頂盒和打印機)上運行的應用程序提供一個健壯且靈活的環境。

Java ME 包括靈活的用戶界面、健壯的安全模型、豐富的內置網絡協議以及對可以動態下載的聯網和離線應用程序。基於 Java ME 規範的應用程序 只需編寫一次就可以用於許多設備,而且可以利用每個設備的本機功能。

Java語言的特點

Java 語言的風格很像 C 語言和 C++ 語言,是一種純粹的面嚮對象語言,它繼承了 C++ 語言面嚮對象的技術核心,但是拋棄了 C++ 的一些缺點,比如說容易引起錯誤的指針以及多繼承等,同時也增加了垃圾回收機制,釋放掉不被使用的內存空間,解決了管理內存空間的煩惱。

Java 語言是一種分佈式的面嚮對象語言,具有面向對象、平臺無關性、簡單性、解釋執行、多線程、安全性等很多特點,下面針對這些特點進行逐一介紹。

1. 面向對象

Java 是一種面向對象的語言,它對對象中的類、對象、繼承、封裝、多態、接口、包等均有很好的支持。爲了簡單起見,Java 只支持類之間的單繼承,但是可以使用接口來實現多繼承。使用 Java 語言開發程序,需要採用面向對象的思想設計程序和編寫代碼。

2. 平臺無關性

平臺無關性的具體表現在於,Java 是“一次編寫,到處運行(Write Once,Run any Where)”的語言,因此採用 Java 語言編寫的程序具有很好的可移植性,而保證這一點的正是 Java 的虛擬機機制。在引入虛擬機之後,Java 語言在不同的平臺上運行不需要重新編譯。

Java 語言使用 Java 虛擬機機制屏蔽了具體平臺的相關信息,使得 Java 語言編譯的程序只需生成虛擬機上的目標代碼,就可以在多種平臺上不加修改地運行。

3. 簡單性

Java 語言的語法與 C 語言和 C++ 語言很相近,使得很多程序員學起來很容易。對 Java 來說,它捨棄了很多 C++ 中難以理解的特性,如操作符的重載和多繼承等,而且 Java 語言不使用指針,加入了垃圾回收機制,解決了程序員需要管理內存的問題,使編程變得更加簡單。

4. 解釋執行

Java 程序在 Java 平臺運行時會被編譯成字節碼文件,然後可以在有 Java 環境的操作系統上運行。在運行文件時,Java 的解釋器對這些字節碼進行解釋執行,執行過程中需要加入的類在連接階段被載入到運行環境中。

5. 多線程

Java 語言是多線程的,這也是 Java 語言的一大特性,它必須由 Thread 類和它的子類來創建。Java 支持多個線程同時執行,並提供多線程之間的同步機制。任何一個線程都有自己的 run() 方法,要執行的方法就寫在 run() 方法體內。

6. 分佈式

Java 語言支持 Internet 應用的開發,在 Java 的基本應用編程接口中就有一個網絡應用編程接口,它提供了網絡應用編程的類庫,包括 URL、URLConnection、Socket 等。Java 的 RIM 機制也是開發分佈式應用的重要手段。

7. 健壯性

Java 的強類型機制、異常處理、垃圾回收機制等都是 Java 健壯性的重要保證。對指針的丟棄是 Java 的一大進步。另外,Java 的異常機制也是健壯性的一大體現。

8. 高性能

Java 的高性能主要是相對其他高級腳本語言來說的,隨着 JIT(Just in Time)的發展,Java 的運行速度也越來越高。

9. 安全性

Java 通常被用在網絡環境中,爲此,Java 提供了一個安全機制以防止惡意代碼的攻擊。除了 Java 語言具有許多的安全特性以外,Java 還對通過網絡下載的類增加一個安全防範機制,分配不同的名字空間以防替代本地的同名類,幷包含安全管理機制。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章