JVM和JRE及JDK

JVM : Java Virtual Machine(Java虛擬機)。所謂“虛擬機”顧名思義就是模擬出來的東西。就像是我們在用電腦看電視,但是電腦里并沒有像電視機里面一樣的硬件支持,但是我們仍然可以從電腦里接受電視臺的節(jié)目。那是因為我們編寫了一個可以模擬電視機硬件工作的軟件運行在電腦的平臺上面的原因。同樣JVM就是模擬了電腦的硬件,它同樣有著像CPU一樣可以執(zhí)行代碼的功能。它的實現(xiàn)具體有:指令集 寄存器組 類文件格式 棧 垃圾收集堆 內存區(qū)??梢园阉斫獬墒菍iT用來執(zhí)行Java程序的一臺機器。也就是說JVM提供了Java執(zhí)行的硬件平臺。JVM上執(zhí)行的代碼都存放在.CLASS文件中。JVM只執(zhí)行字節(jié)碼文件。

JRE : Java Runtime Environment(Java運行環(huán)境)。就是可以運行Java程序的地方。就像是我們要在電腦上運行一個視頻軟件的時候必須在Windos或者是Linux等操作系統(tǒng)上一樣。那我們就可以把它看做是一個操作系統(tǒng)。也就是說JRE提供了Java執(zhí)行的軟件平臺。在運行Java的過程中除了需要有JVM執(zhí)行Java代碼這個動作外,還需要Java API(Application Programming Interface,應用編程接口)說簡單的就是“類庫”。Java程序在運行中沒有這些API是不行的,所以JRE包含JVM。

JDK : Java Development ToolKit(Java開發(fā)工具包)。我們有了硬件和軟件兩個平臺后就可以做我們自己想做的事情了。JDK就是我們用來做事情的工具,它包括JRE還有其他工具。我們所說版本的不同,也就是說它里面的工具有差異。就像是你不同的工具箱里放著不同的工具一樣。舉個例子:最常用的一個就是javac,它是把.java的文件翻譯成.class文件的工具。然后讓JVM來執(zhí)行.class文件中的字節(jié)碼。(就像電腦的CPU只認識0或1的道理)

如果一臺計算機的需求只是運行Java程序,而不是去編寫Java程序的時候,它只需要安裝JRE就可以了。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,569評論 19 139
  • 轉載blog.csdn.net/ning109314/article/details/10411495/ JVM工...
    forever_smile閱讀 5,507評論 1 56
  • 前言 寫這篇文章的目的: 總結所學的 JVM 知識 幫助想了解 JVM 的朋友,知無不言,言無不盡 本篇文章將會介...
    SavySoda閱讀 5,228評論 11 105
  • 我一直懷疑,那些酒后耍瘋的人不過是在演戲。若是拳推腳攘,其氣力絕不下于平時;若是吵架喝罵,其妙語連珠,字句鏗鏘,酒...
    勒布朗不是德懷恩閱讀 4,494評論 0 0
  • 今天上海第二輪第一場,有什么好抱怨的呢!你做的是那么喜歡的事。
    茄子就是茄子閱讀 157評論 0 0

友情鏈接更多精彩內容