溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么深度剖析JDK和JRE以及JVM三者的區(qū)別

發(fā)布時(shí)間:2021-10-23 16:51:46 來源:億速云 閱讀:120 作者:柒染 欄目:編程語言

本篇文章為大家展示了怎么深度剖析JDK和JRE以及JVM三者的區(qū)別,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

你對jdk,jre,jvm三者的區(qū)別和聯(lián)系是否了解,這里和大家分享一下, j2sdk(Software Development Kit for Java 2) ,簡稱JDK.它包括了JDK(Java Development Kit),JRE(Java Runtime Environment),Java Plug-in. JDK即Java開發(fā)工具包. JDK是一組API,也可以說是一些java Class。

jdk,jre,jvm區(qū)別

◆ j2sdk(Software Development Kit for Java 2) ,簡稱JDK.它包括了JDK(Java Development Kit),JRE(Java Runtime Environment),Java Plug-in. JDK即Java開發(fā)工具包. JDK是一組API,也可以說是一些java Class。JDK是一切java應(yīng)用程序的基礎(chǔ),所有的java應(yīng)用程序都構(gòu)建在這個(gè)之上的。位于"Java安裝目錄\jdk1.5.0_07".

◆JRE ( Java Runtime Environment ),是運(yùn)行 Java 程序必不可少的(除非用其他一些編譯環(huán)境編譯成.exe可執(zhí)行文件……),JRE的地位就象一臺PC機(jī)一樣,我們寫好的Win32應(yīng)用程序需要操作系統(tǒng)幫我們運(yùn)行,同樣的,我們編寫的Java程序也必須要JRE才能運(yùn)行。所以當(dāng)你裝JDK后,如果分別在硬盤上的兩個(gè)不同地方安裝了兩套JRE,那么你可以想象你的電腦有兩臺虛擬的Java   PC機(jī),都具有運(yùn)行Java程序的功能。所以我們可以說,只要你的電腦安裝了JRE,就可以正確運(yùn)行Java應(yīng)用程序。JRE里面有一個(gè) JVM , JRE 與具體的 CPU 結(jié)構(gòu)和操作系統(tǒng)有關(guān),我們從 Sun 下載 JRE 的時(shí)候就看到了不同的各種版本,,同 JVM 一起組成 JRE 的還有一些 API (如 awt , swing 等), JRE 是運(yùn)行 Java 程序必不可少的.

◆JVM 是 Java 平臺的基礎(chǔ),和實(shí)際的機(jī)器一樣,它也有自己的指令集,并且在運(yùn)行時(shí)操作不同的內(nèi)存區(qū)域。 JVM 通過抽象的操作系統(tǒng)和 CPU 結(jié)構(gòu),提供了一種與平臺無關(guān)的代碼執(zhí)行方法,即與特殊的實(shí)現(xiàn)方法、主機(jī)硬件、主機(jī)操作系統(tǒng)無關(guān)。但是在一些小的方面, JVM 的實(shí)現(xiàn)也是互不相同的,比如垃圾回收算法,線程調(diào)度算法(可能不同 OS 有不同的實(shí)現(xiàn))。 JVM 的主要工作是解釋自己的指令集(即字節(jié)碼)并映射到本地的 CPU 的指令集或 OS 的系統(tǒng)調(diào)用,保護(hù)用戶免被惡意程序騷擾。 JVM 對上層的 Java 源文件是不關(guān)心的,它關(guān)注的只是由源文件生成的類文件( class file )。類文件的組成包括 JVM 指令集,符號表以及一些補(bǔ)助信息。

要運(yùn)行Applet,在客戶端必須安裝有 JRE,即“運(yùn)行時(shí)”,容易一點(diǎn)理解,就象所謂的“插件”,要開發(fā)JAVA應(yīng)用程序\Web應(yīng)用,就必須在服務(wù)器端安裝相應(yīng)的 JVM+JDK 了(開發(fā)應(yīng)用 Java web應(yīng)用 時(shí),客戶端不需要安裝任何的JVM)

如果你使用JAVA開發(fā)應(yīng)用,就需要安裝 JRE+JDK,就是 J2SE.
 
    如果在客戶端運(yùn)行Applet,客戶端瀏覽器必須嵌有JAVA JVM,如果沒有,就需要安裝,即:在客戶端創(chuàng)建JRE(運(yùn)行時(shí),包含JVM),而客戶端是不需要做開發(fā)的,所以,JDK就沒有必要安裝了不同版本的Applet在不同的JVM下可能無法正常運(yùn)行,而Microsoft JVM只是Sun JVM的“低版本”,微軟在windows xp/2003中干脆將JVM去掉了.

上述內(nèi)容就是怎么深度剖析JDK和JRE以及JVM三者的區(qū)別,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI