JVM(Java Virtual Machine,Java虛擬機(jī))
Java程序的跨平臺(tái)特性主要是指字節(jié)碼文件可以在任何具有Java虛擬機(jī)的計(jì)算機(jī)或者電子設(shè)備上運(yùn)行,Java虛擬機(jī)中的Java解釋器負(fù)責(zé)將字節(jié)碼文件解釋成為特定的機(jī)器碼進(jìn)行運(yùn)行。因此在運(yùn)行時(shí),Java源程序需要通過編譯器編譯成為.class文件。眾所周知java.exe是java class文件的執(zhí)行程序,但實(shí)際上java.exe程序只是一個(gè)執(zhí)行的外殼,它會(huì)裝載jvm.dll(windows下,下皆以windows平臺(tái)為例,linux下和solaris下其實(shí)類似,為:libjvm.so),這個(gè)動(dòng)態(tài)連接庫才是java虛擬機(jī)的實(shí)際操作處理所在。
JVM是JRE的一部分。
它是一個(gè)虛構(gòu)出來的計(jì)算機(jī),是通過在實(shí)際的計(jì)算機(jī)上仿真模擬各種計(jì)算機(jī)功能來實(shí)現(xiàn)的。JVM有自己完善的硬件架構(gòu),如處理器、堆棧、寄存器等,還具有相應(yīng)的指令系統(tǒng)。Java語言最重要的特點(diǎn)就是跨平臺(tái)運(yùn)行
。使用JVM就是為了支持與操作系統(tǒng)無關(guān),實(shí)現(xiàn)跨平臺(tái)。 所以,JAVA虛擬機(jī)JVM是屬于JRE的,而現(xiàn)在我們安裝JDK時(shí)也附帶安裝了JRE(當(dāng)然也可以單獨(dú)安裝JRE)。
JRE
Java Runtime Environment,Java運(yùn)行環(huán)境。 包含JVM標(biāo)準(zhǔn)實(shí)現(xiàn)和java核心類庫,完整的Java運(yùn)行環(huán)境.
JRE目錄結(jié)構(gòu)
JRE目錄結(jié)構(gòu)文章來源:http://www.zghlxwxcb.cn/news/detail-681171.html
- bin:Java平臺(tái)工具所使用的的.exe可執(zhí)行文件和.dll可執(zhí)行文件。
- lib:代碼庫、樹形設(shè)置以及JRE使用的源文件,如——
rt.jar:Bootstrap類(構(gòu)成Java平臺(tái)核心API的運(yùn)行時(shí)類);
charsets.jar:字符轉(zhuǎn)換類;
jfxrt.jar:JavaFX的運(yùn)行時(shí)庫。 - lib\applet:包含支持類的小程序jar文件可以放置在lib/applet/目錄中。這樣,通過允許小程序類從Applet類裝載器的本地文件系統(tǒng)預(yù)裝,提供同樣的保護(hù),就好像他們已經(jīng)被下載超過凈減少啟動(dòng)時(shí)間大的小程序。
- lib\ext:Java平臺(tái)的擴(kuò)展程序(插件等)的默認(rèn)安裝目錄。如——
localedata.jar-用于現(xiàn)場(chǎng)數(shù)據(jù) java.text和java.util。 - lib\fonts:平臺(tái)使用的字體文件。
- lib\security:包含用于安全管理的文件。這些措施包括安全策略(java.policy)和安全性(java.security)文件。
JDK
Java Development Kit,Java開發(fā)環(huán)境。 包含了JRE、Java核心類庫、開發(fā)工具包(編譯器+調(diào)試工具)文章來源地址http://www.zghlxwxcb.cn/news/detail-681171.html
到了這里,關(guān)于JVM,JRE和JDK的區(qū)別的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!