JVM(Java Virtual Machine)是Java虛擬機(jī)的簡(jiǎn)稱。它是Java程序運(yùn)行的基礎(chǔ)環(huán)境,負(fù)責(zé)將Java程序編譯后的字節(jié)碼解釋執(zhí)行。
一個(gè)JVM實(shí)例通常有三個(gè)組成部分:
ClassLoader:負(fù)責(zé)加載Java程序中用到的類 Execution Engine:負(fù)責(zé)執(zhí)行Java程序中的字節(jié)碼指令 Runtime Data Area:Java程序運(yùn)行時(shí)的數(shù)據(jù)區(qū)域
Java程序是使用Java語(yǔ)言編寫(xiě)的應(yīng)用程序。為了讓Java程序能夠運(yùn)行,需要將Java源程序編譯成字節(jié)碼文件,再由JVM實(shí)例解釋執(zhí)行。
Java程序通常包含一個(gè)或多個(gè)類,每個(gè)類都對(duì)應(yīng)著一個(gè)獨(dú)立的字節(jié)碼文件。在Java程序運(yùn)行時(shí),JVM實(shí)例會(huì)根據(jù)需要?jiǎng)討B(tài)加載這些字節(jié)碼文件。
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, world!"); } }
上面這段代碼是一個(gè)簡(jiǎn)單的Java程序,它定義了一個(gè)名為HelloWorld的類,并在該類中定義了一個(gè)名為main的靜態(tài)方法。在main方法中,通過(guò)System.out.println方法輸出一行字符串。
當(dāng)執(zhí)行這個(gè)Java程序時(shí),JVM實(shí)例會(huì)先加載HelloWorld類的字節(jié)碼文件,并執(zhí)行其中的main方法。執(zhí)行過(guò)程中,JVM實(shí)例會(huì)將字符串"Hello, world!"輸出到控制臺(tái)。