Java語言特點

Java與C++語言相比,去掉了 C++語言的複雜性和二義性的成分,增加了安全性和可移植性的成分。Java語言具有如下特點:簡單性、面向對象、平臺無關性、可移植性、解釋性、髙性能、動態性、可靠性和安全性、多線程、分佈式處理等。下面將介紹Java語言的主要特點
     

 1.簡單性


      Java系統精簡,但功能齊備;語言風格類似於C + + ,但比C + +容易掌握,且摒棄了C++中容易引發程序錯誤的地方,如指針操作和內存管理;提供豐富的類庫。


      2.面向對象


      Java語言是純面向對象的語言,程序的結構由一個以上的類和(或)接口組成。程序的設計集中於類與對象、繼承與接口上。通過繼承機制,子類可以使用父類所提供的屬性與方法,實現了軟件代碼的複用。


      3.平臺無關性

      Java是平臺無關的語言,是指用Java寫的應用程序不用修改就可在不同的軟硬件平臺上運行。平臺無關有兩種:源代碼級和目標代碼級。C和C++%—定程度的源代碼級平臺無關,表明用C或C++寫的應用程序不用修改只需重新編譯就可以在不同平臺上運行。Java主要靠Java虛擬機(Java Virtual Machine, JVM)在目標碼級實現平臺無關性。JVM是一種抽象機器,它附着在具體操作系統之上,本身具有一套虛擬機的機器指令,並有自己的棧、寄存器組等。但JVM通常是在軟件上而不是在硬件上實現。目前,SUN系統公司已經設計實現了 Java芯片,主要使用在網絡計算機(NC)上。另外,Java芯片的出現也會使Java更容易嵌入到家用電器中。


      4.可移植性


      Java應用程序可以在配備了 Java解釋器和運行環境的任何計算機系統上運行,而與體系結構無關。


      5.解釋性


      JVM是Java平臺無關的基礎,在JVM上,有一個Java解釋器用來解釋Java編譯器編譯後的程序。Java編程人員在編寫完軟件後,通過Java編譯器將Java源程序編譯爲JVM的字節碼(Bytecode)。任何一臺機器只要配備了 Java解釋器,就可以運行這個程序,而不管這種字節碼是在何種平臺上生成的。Java程序的運行環境如下圖所示。另外,Java採用的是基於IEEE標準的數據類型。通過JVM保證數據類型的一致性,也確保了java的平臺無關性。

 

      6高性能


      Java系統提供了 JIT(Just In Time)編譯器,JIT能產生編譯好的本地機器代碼,以提髙Java代碼的執行速度。


      7.動態性


      允許程序動態地裝人運行過程中所需要的類。


      8.可靠性和安全性


      可靠性和安全性主要表現在下列幾個方面:
      (1) Java編譯器對所有的表達式和參數都要進行類型相容性的檢查,以保證類型是兼容的。任何類型的不匹配都將被報告爲錯誤而不是警告。在編譯器完成編譯以前,錯誤必須被改正過來。
      (2) Java不支持指針,這杜絕了內存的非法訪問。
      (3) Java的自動單元收集防止了內存丟失等動態內存分配導致的問題。
      (4) Java解釋器運行時實施檢査,可以發現數組和宇符串訪問的越界;Java提供了異常處理機制,以便從錯誤處理任務恢復。
      (5)由於Java主要用於網絡應用程序的開發,因此對安全性有較髙的要求。Java通過自己的安全機制防止了病毒程序的產生和下載程序對本地系統的威脅破壞。當Java字節碼進人解釋器時,首先必須經過字節碼校驗器的檢查,然後Java解釋器將決定程序中類的內存佈局,隨後,類裝載器負責把來自網絡的類裝載到單獨的內存區域,避免應用程序之間相互干擾破壞,最後,客戶端用戶還可以限制從網絡上裝載的類只能訪問某些文件系統。
上述幾種機制結合起來,使得Java成爲安全的編程語言。


      9.多線程


      Java提供的多線程機制使應用程序能夠併發執行,提供的同步機制保證了對共享數據的正確操作。通過使用多線程,程序設計者可以分別用不同的線程完成特定的行爲,而不需要採用全局的事件循環機制,這樣就很容易實現網絡上的實時交互行爲。


      10.分佈式處理


      分佈式包括數據分i和操作分佈。數據分佈是指數據可以分散在網絡的不同主機上f操作分佈是指把一個計箅分散在不同主機上處理。Java支持WWW客戶機/服務器計箅模式,因此,它支持以上兩種分佈性。對於前者,Java提供了一個叫做URL的對象,利用這個對象,可以訪問Internet上的所有網絡資源;對於後者,Java提供的基於流套接字的網絡編程接口,爲實現網絡的應用和Web應用提供了方便。

鏈接:http://www.chinait8.net/tech/javabase/4137.html

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