簡單介紹JDK vs JRE vs JVM三者區(qū)別
文編|JavaBuild
哈嘍,大家好呀!我是JavaBuild,以后可以喊我鳥哥,嘿嘿!俺滴座右銘是不在沉默中爆發(fā),就在沉默中滅亡,一起加油學(xué)習(xí),珍惜現(xiàn)在來之不易的學(xué)習(xí)時光,等工作之后,你就會發(fā)現(xiàn),想學(xué)習(xí)真的需要擠時間,厚積薄發(fā)啦!
1995年Sun公司在SunWorld大會上發(fā)布了Java1.0版本,并提出可那個響徹云霄的“一次運行,隨處編譯”的口號,這句話充分的展示出了Java的跨平臺特性,提到跨平臺,便衍生出了我們今天需要討論的話題,JDK、JRE、JVM三者的區(qū)別
JDK:Java Development Kit( java 開發(fā)工具包)。即java語言編寫的程序所需的開發(fā)工具包,包含了 JRE,同時還包括 java 源碼的編譯器 javac、監(jiān)控工具 jconsole、javap(反編譯工具)、 javadoc(文檔注釋工具)、jdb(調(diào)試器)、分析工具 jvisualvm等等。文章來源:http://www.zghlxwxcb.cn/news/detail-796169.html
JRE:Java Runtime Environment( java 運行時環(huán)境)。即java程序的運行時環(huán)境,包含了 java 虛擬機,java基礎(chǔ)類庫。作為運行時環(huán)境,顧名思義,如果僅是用來運行Java程序,而不是用開發(fā)Java的話,安裝了JRE就夠了。
圖中為Oracle官網(wǎng)給出的JDK,JRE,JVM三者的區(qū)別。
JVM:Java Virtual Machine(Java虛擬機)的縮寫,.class 文件會在 JVM 上執(zhí)行,JVM 會解釋給操作系統(tǒng)執(zhí)行,有自己的指令集,解釋自己的指令集到 CPU 指令集和系統(tǒng)資源的調(diào)用,JVM 只關(guān)注被編譯的 .class 文件,不關(guān)心 .java 源文件。一套字節(jié)碼指令集、一組寄存器、一個棧、一個垃圾回收堆和一個存儲方法域等組成,屏蔽了不同操作系統(tǒng)(macOS、Windows、Linux)的差異性,使得 Java 能夠“一次編譯,到處運行”。
JVM使我們需要重點關(guān)注的對象,后續(xù)還會針對JVM出一系列的面試題,敬請期待。文章來源地址http://www.zghlxwxcb.cn/news/detail-796169.html
到了這里,關(guān)于簡單介紹JDK、JRE、JVM三者區(qū)別的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!