當前位置:才華齋>計算機>java語言>

Java語言的優點有哪些

java語言 閱讀(3.21W)

Java語言最大的優點是它的跨平臺性。以下是本站小編整理的Java語言的優點相關內容,歡迎閱讀學習!

Java語言的優點有哪些

  Java語言的優點

Java語言最大的優點是它的跨平臺性。一次編寫,到處執行。能始終如一的在任何平臺上執行,使得系統的移植、平臺的遷移變得十分容易。其他優點如下。

簡單易學:Java語言的語法與C語言和C++語言很接近,使得大多數程式設計師很容易學習和使用Java。另一方面,Java丟棄了C++中很少使用的、很難理解的、令人迷惑的那些特性,如操作符過載、多繼承、自動的強制型別轉換。特別地,Java語言不使用指標,並提供了自動的廢料收集,使得程式設計師不必為記憶體管理而擔憂,是很容易學習的。

面向物件:Java語言提供類、介面和繼承等原語,為了簡單起見,只支援類之間的單繼承,但支援介面之間的多繼承,並支援類與介面之間的實現機制(關鍵字為implement)。Java語言全面支援動態繫結,而C++語言只對虛擬函式使用動態繫結。總之,Java語言是一個純的面向物件程式設計語言。

安全性:Java語言不支援指標,只有通過物件的例項才能訪問記憶體,使應用更加安全。

可移植性:這種可移植性來源於體系結構中立性,另外,Java還嚴格規定了各個基本資料型別的長度。Java系統本身也具有很強的可移植性,Java編譯器是用Java實現的,Java的執行環境是用ANSIC實現的。

對物件技術的全面支援和平臺內嵌的API使得Java應用具有無比的健壯性和可靠性,這也減少了應用系統的維護費用。

  【相關閱讀】Java工作原理

Java語言引入了Java虛擬機器,具有跨平臺執行的功能,能夠很好地適應各種Web應用。同時,為了提高Java語言的效能和健壯性,還引入瞭如垃圾回收機制等的新功能,通過這些改進讓Java具有其獨特的工作原理。

  Java虛擬機器(JVM)

Java虛擬機器(Java Virtual Machine,JVM)是軟體模擬的.計算機。JVM是Java平臺的核心,它可以在任何處理器上(無論是在計算機中還是在其他電子裝置中)安全、相容地執行儲存在s檔案中的位元組碼。Java虛擬機器的“機器碼”儲存在s檔案中,有時也可以稱為位元組碼檔案。

Java虛擬機器的簡歷需要針對不同的軟硬體平臺來實現,既要考慮處理器的型號,也要考慮作業系統的種類。由此在SPARC結構、X86結構、MIPS和PPC等嵌入式處理晶片上,在UNIX、Linux、Windows和部分實時作業系統上都可以實現Java虛擬機器。

為了讓編譯產生的位元組碼能更好的解釋與執行,把Java虛擬機器分成了6個部分:JVM直譯器、JVM指令系統、暫存器、棧、儲存區和碎片回收區。

  JVM直譯器:虛擬機器處理欄位碼的CPU。

JVM指令系統:該系統和計算機很相似,一條指令由操作碼和運算元兩部分組成。操作碼為8位二進位制數,主要是為了說明一條指令的功能,運算元可以根據需要而定,JVM有256種不同的操作指令。

暫存器:JVM有自己的虛擬暫存器,這樣就可以快速地與JVM的直譯器進行資料交換。為了功能的需要,JVM設定了4個常用的32位暫存器:pc(程式計數器)、optop(運算元棧頂指標)、frame(當前執行環境指標)和vars(指向當前執行環境中第一個區域性變數的指標)。

JVM棧:是指令執行時資料和資訊儲存的場所的控制中心,它提供給JVM直譯器運算所需要的資訊。

儲存區:JVM儲存區用於儲存編譯過的位元組碼等資訊。

碎片回收區:JVM碎片回收是指將使用過的Java類的具體例項從記憶體中進行回收,這就使得開發人員避免自己程式設計控制記憶體的麻煩和危險。隨著JVM的不斷升級,其碎片回收的技術和演算法也更加合理。JVM 1.4.1版後產生了一種分代收集技術,簡單來說就是依據物件在程式中生存的時間劃分成代,以此為標準進行碎片回收。

  無用記憶體自動回收機制

在程式的執行過程中,部分記憶體在使用過後就處於廢棄狀態,如果不及時進行回收,很有可能導致記憶體洩露,進而引發系統崩潰。在C++語言中是由程式設計師進行記憶體回收的,程式設計師需要在編寫程式時把不再使用的物件記憶體釋放掉,這種人為管理記憶體釋放的方法往往會因程式設計師的疏忽而致使記憶體無法回收,同時也增加程式設計師的工作量。而在Java執行環境中,始終存在著一個系統級的執行緒,專門跟蹤記憶體的使用情況,定期檢測出不再使用的記憶體,並自動進行回收,避免了記憶體的洩露,也減輕了程式設計師的工作量。

  程式碼安全性檢查機制