What is a Java Virtual Machine?
- JVM是一種計(jì)算設(shè)備的規(guī)范,它是由人們虛擬出來的一臺(tái)計(jì)算機(jī).它是通過在實(shí)際的計(jì)算機(jī)上仿真各種計(jì)算機(jī)功能來實(shí)現(xiàn)的.
- JVM有自己的硬件,如處理器,堆棧,寄存器等,還有相應(yīng)的指令系統(tǒng).
JVM的學(xué)習(xí)意義
- 學(xué)習(xí)java更加底層的東西,讓我們更加了解java的生態(tài).
- 了解Java虛擬機(jī)的運(yùn)行原理,能更好調(diào)節(jié)程序的穩(wěn)定與快速.
JVM如何實(shí)現(xiàn)的平臺(tái)無關(guān)性
與平臺(tái)的無關(guān)性是Java的重要特點(diǎn)之一,同樣證實(shí)因?yàn)镴VM的存在實(shí)現(xiàn)了這一點(diǎn)特性.JVM語言
相當(dāng)于在所有不同的操作系統(tǒng)之上進(jìn)行了一次封裝,面向用戶的是JVM和Java語言,屏蔽掉了操作系統(tǒng)之間對于硬件的不同操作方式.也就是說,只用當(dāng)前操作系統(tǒng)支持JVM的存在,就能運(yùn)行java編譯成的class字節(jié)碼.JVM會(huì)將class字節(jié)碼解釋成當(dāng)前操作系統(tǒng)的機(jī)器指令執(zhí)行.
so,這就是java常說的"一次編譯,處處執(zhí)行".
JVM,JRE,JDK
JRE:Java RunTime Environment,字如其名,java運(yùn)行時(shí)環(huán)境,它主要包含了JVM,java基礎(chǔ)類庫.是是使用java語言編寫的程序運(yùn)行所需要的軟件環(huán)境,提供給想要運(yùn)行java程序的用戶.
JDK:Java Development Kit,java開發(fā)工具包,java程序員編寫java程序時(shí)需要的開發(fā)工具包.JDK中包含了JRE,以及包含了編譯java源碼的編譯器javac,還包含了很多java程序調(diào)試和分析的工具:jconsole,jvisualvm等工具軟件罕扎,還包含了java程序編寫所需的文檔和demo例子程序聚唐。