jdk,jre,jvm 三者間的差別與聯繫

           學習java有近1年半了,自以爲學的挺不錯。有一次筆試遇到一道題,請說說jdk,jre,jvm的區別與聯繫;javaSE,javaEE,javaME,j2SE,J2ME,J2EE的含義.我對這個問題回答的不完善,那次筆試成績就因這類小問題成績較低,因爲平時認爲這些東西不重要,就忽略了。

  由於那次的教訓,特此把這個問題總結下。

  1.JDK是java Development ToolKit(Java開發工具包)的縮寫,其中包含了java的開發工具,也包含了JRE.

   其中的開發工具:編譯工具(javac.exe),打包工具(jar.exe);

  2.JRE是Java Runtime Enviromental(java運行時環境)的縮寫,也就是我們說的JAVA平臺,所有的Java程序都要在JRE下才能運行。包括JVMJAVA核心類庫和支持文件。與JDK相比,它不包含開發工具——編譯器、調試器和其它工具。

  3.JVM是Java Virtual Mechinal(JAVA虛擬機)的縮寫。JVM是JRE的一部分,它是一個虛構出來的計算機,是通過在實際的計算機上仿真模擬各種計算機功能來實現的。JVM有自己完善的硬件架構,如處理器、堆棧、寄存器等,還具有相應的指令系統。JVM的主要工作是解釋自己的指令集(即字節碼)並映射到本地的CPU的指令集或OS的系統調用。Java語言是跨平臺運行的,其實就是不同的操作系統,使用不同的JVM映射規則,讓其與操作系統無關,完成了跨平臺性JVM對上的Java源文件是不關心的,它關注的只是由源文件生成的類文件(class file)。類文件的組成包括JVM指令集,符號表以及一些補助信息。

  下圖展示了三者之間的關係:

  

       javaSE,javaEE,javaME,j2SE,J2ME,J2EE的含義及聯繫:

  首先清楚以上幾個概念都是java平臺的組成部分,也就是說他們是平臺,並非一種技術或語言。

  java平臺包含三個組成部分,j2SE(面向桌面應用),j2EE(面向企業應用),j2ME(面向移動設備)。

J2EE(Java 2 Platform Enterprise Edition)企業版

是爲開發企業環境下的應用程序提供的一套解決方案。該技術體系中包含的技術如Servlet Jsp等,主要針對於Web應用程序開發。

J2SE(Java 2 Platform Standard Edition)標準版

是爲開發普通桌面和商務應用程序提供的解決方案。該技術體系是其他兩者的基礎,可以完成一些桌面應用程序的開發。比如Java版的掃雷。

平時所說的JDK其實就是指J2SE,這也是本教程所要講解的。

J2ME(Java 2 Platform Micro Edition)小型版

是爲開發電子消費產品和嵌入式設備提供的解決方案。該技術體系主要應用於小型電子消費類產品,如手機中的應用程序等。

注意:這裏的小型電子消費品不是指搭載了IOS或Android操作系統的手機,IOS和Android系統都有自己的開發組件。

  Java5.0版本後,J2EE、J2SE、J2ME分別更名爲javaEE,javaSE,javaME。

每個版本名稱中都帶有一個數字“2”,這個“2”是指Java2:自從 Java1.2 發佈後,Java 改名爲 Java2(不過我們平時仍然稱爲 Java)。













  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章