Java是什么?Java的特點是什么?
Java是什么?
Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 語言和 Java 平臺的總稱。由于 Sun 公司已被 Oracle 公司收購,所以 Java 成為 Oracle 公司的產品。
Java 語言是一門面向對象的編程語言,功能強大,簡單易用,具有簡單性、面向對象、分布式等特點,可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。
Java 語言在服務器編程方面使用最廣泛、生態最完備。
Java分為三個體系:
- JavaSE(J2SE):Java2 Platform Standard Edition,java平臺標準版。
- JavaEE(J2EE):Java 2 Platform,Enterprise Edition,java平臺企業版。
- JavaME(J2ME):Java 2 Platform Micro Edition,java平臺微型版。
Java的特點是什么?
Java 語言是簡單的:
Java 語言的語法與 C 語言和 C++ 語言很接近,使得大多數程序員很容易學習和使用。另一方面,Java 丟棄了 C++ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉換。特別地,Java 語言不使用指針,而是引用。并提供了自動分配和回收內存空間,使得程序員不必為內存管理而擔憂。
Java 語言是面向對象的:
Java 語言提供類、接口和繼承等面向對象的特性,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實現機制(關鍵字為 implements)。Java 語言全面支持動態綁定,而 C++語言只對虛函數使用動態綁定。Java語言是一個純的面向對象程序設計語言。
Java語言是分布式的:
Java 語言支持 Internet 應用的開發,在基本的 Java 應用編程接口中有一個網絡應用編程接口(java net),它提供了用于網絡應用編程的類庫,包括 URL、URLConnection、Socket、ServerSocket 等。Java 的 RMI(遠程方法激活)機制也是開發分布式應用的重要手段。
Java 語言是健壯的:
Java 的強類型機制、異常處理、垃圾的自動收集等是 Java 程序健壯性的重要保證。對指針的丟棄是 Java 的明智選擇。Java 的安全檢查機制使得 Java 更具健壯性。
Java語言是安全的:
Java通常被用在網絡環境中,為此,Java 提供了一個安全機制以防惡意代碼的攻擊。除了Java 語言具有的許多安全特性以外,Java 對通過網絡下載的類具有一個安全防范機制(類 ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節代碼檢查,并提供安全管理機制(類 SecurityManager)讓 Java 應用設置安全哨兵。
Java 語言是體系結構中立的:
Java 程序(后綴為 java 的文件)在 Java 平臺上被編譯為體系結構中立的字節碼格式(后綴為 class 的文件),然后可以在實現這個 Java 平臺的任何系統中運行。這種途徑適合于異構的網絡環境和軟件的分發。
Java 語言是可移植的:
這種可移植性來源于體系結構中立性,另外,Java 還嚴格規定了各個基本數據類型的長度。Java 系統本身也具有很強的可移植性,Java 編譯器是用 Java 實現的,Java 的運行環境是用 ANSI C 實現的。
Java 語言是解釋型的:
如前所述,Java 程序在 Java 平臺上被編譯為字節碼格式,然后可以在實現這個 Java 平臺的任何系統中運行。在運行時,Java 平臺中的 Java 解釋器對這些字節碼進行解釋執行,執行過程中需要的類在聯接階段被載入到運行環境中。
Java 是高性能的:
與那些解釋型的高級腳本語言相比,Java 的確是高性能的。事實上,Java 的運行速度隨著 JIT(Just-In-Time)編譯器技術的發展越來越接近于 C++。
Java 語言是多線程的:
在 Java 語言中,線程是一種特殊的對象,它必須由 Thread 類或其子(孫)類來創建。通常有兩種方法來創建線程:其一,使用型構為 Thread(Runnable) 的構造子類將一個實現了 Runnable 接口的對象包裝成一個線程,其二,從 Thread 類派生出子類并重寫 run 方法,使用該子類創建的對象即為線程。值得注意的是 Thread 類已經實現了 Runnable 接口,因此,任何一個線程均有它的 run 方法,而 run 方法中包含了線程所要運行的代碼。線程的活動由一組方法來控制。Java 語言支持多個線程的同時執行,并提供多線程之間的同步機制(關鍵字為 synchronized)。
Java 語言是動態的:
Java 語言的設計目標之一是適應于動態變化的環境。Java 程序需要的類能夠動態地被載入到運行環境,也可以通過網絡來載入所需要的類。這也有利于軟件的升級。另外,Java 中的類有一個運行時刻的表示,能進行運行時刻的類型檢查。