更新時間:2019-06-20 來源:黑馬程序員 瀏覽量:
Java程序運行時,必須經(jīng)過編譯和運行兩個步驟。首先將后綴名為java的源文件進行編譯,最終生成后綴名為.class的字節(jié)碼文件。然后Java虛擬機將字節(jié)碼文件進行解釋執(zhí)行,并將結果顯示出來。
為了方便理解java程序運行的過程,我們把具體步驟寫下來。
①編寫一個 Hello world.java的文件。
②使用“Javac Hello world.java”命令開啟Java編譯器并進行編譯。編譯結束后,會自動生成一個Hello World. class的字節(jié)碼文件
③使用“ Java Hello world”命令啟動Java虛擬機運行程序,Java虛擬機首先將編譯好的字節(jié)碼文件加載到內(nèi)存,這個過程被稱為類加載,它是由類加載器完成的,然后虛擬針對加都到內(nèi)在中的Java類進行解釋執(zhí)行,便可看到運行結果。
通過上面的分析不難發(fā)現(xiàn),Java程序是由虛擬機負責解釋執(zhí)行的,而并非操作系統(tǒng)。
這樣做的好處是可以實現(xiàn)跨平臺性,也就是說針對不同的操作系統(tǒng)可以編寫相同的程序,只需安裝不同版本的虛擬機即可。
從圖中可以看出,不同的操作系統(tǒng)需要使用不同版本的虛擬機,這種方式便得Java語言具有“一次編寫,到處運行( write once, run anywhere)”的特性,有效地解決了程序設計語言在不同操作系統(tǒng)編譯時產(chǎn)生不同機器代碼的問題,大大降低了程序開發(fā)和維護的成本。
需要注意的是,Java程序通過Java虛擬機可以達到跨平臺特性,但Java虛擬機并不是跨平臺的。也就是說,不同操作系統(tǒng)上的JaVa虛擬機是不同的,即
Windows平臺上的Java虛擬機不能用在 Linux平臺上,反之亦然。
以上我們介紹了java的運行機制,想必同學你已經(jīng)了解了。如果在學習java過程中遇到問題,可點擊咨詢按鈕獲得幫助。