天天看點

面試題002jdk,jre,jvm

一、JDK:(java development kit 配套元件):java開發工具包,是開發人員所需要安裝的環境

1.jdk是支援Java程式開發的最小環境,包括三部分:Java程式設計語言、Java虛拟機、Java API類庫。

2.

JDK安裝目錄下主要檔案夾及檔案功能:

(1)bin檔案夾:提供JDK工具程式,包括javac、java、javadoc、appletviewer等可執行程式。

(2)demo檔案夾:Sun公司為Java使用者提供給的一些已經編寫好的範例程式。

(3)jre檔案夾:存放Jaca運作環境檔案。

(4)lib檔案夾:存放Java的類庫檔案,即工具程式使用的Java類庫。JDK中的工具程式大多也是由Java編寫而成。

(5)include檔案夾:存放用于本地方法的檔案。

二、JRE:java runtime environment:java運作環境,java程式運作所需要安裝的環境

1.jre是支援Java程式運作的标準環境,包括倆個部分:Java SE API和Java虛拟機

2.在Java平台下,所有的Java程式都需要在jre下才能運作。

JRE安裝目錄下主要檔案夾及檔案功能:

1.bin檔案:可以認為是jvm。

2.lib檔案:可以認為是jvm工作所需要的類庫

三、JVM:java虛拟機,運用硬體或軟體手段實作的虛拟的計算機,Java虛拟機包括:寄存器,堆棧,處理器

1.它是整個Java實作跨平台的最核心的部分,Java面對不同的作業系統使用不同的虛拟機。jvm隻關心由源檔案生成的類檔案。

2.所有的Java程式會首先被編譯為.class的類檔案,這種類檔案可以在虛拟機上執行。

3.jvm的主要工作是解釋自己的指令集(即位元組碼)并映射到本地的cpu的指令集或者os的系統調用

四、jdk、jre、jvm關系:

面試題002jdk,jre,jvm

深入了解Java虛拟機書中同樣提到了Java技術 :

面試題002jdk,jre,jvm

根據如上所說可知:

jdk包括倆個部分,第一個部分包括Java開發工具(編譯器、調試器、其他工具,第二個部分包括(JRE)Java運作時環境(Java虛拟機(JVM)、Java核心類庫(API)、支援檔案)

面試題002jdk,jre,jvm

也就是說jdk包含了jre,這一點我們可以在安裝jdk目錄下找到jre的檔案夾:

面試題002jdk,jre,jvm

值得注意的是 JDK 安裝完成之後,安裝向導會詢問你是否安裝 JRE(Java Runtime Environment),還要不要安裝呢?第一張圖就是詢問之後安裝jre所成。

JDK裡面的JRE安裝路徑(看作私有jre環境):D:\javaee\java\jdk1.8.0_91\jre
JDK外面的JRE安裝路徑(看作共有jre環境):D:\javaee\java\jre1.8.0_91
           

倆個jre的異同(本質上相同):

相同點:這兩個JRE都可以作為開發Java程式的運作環境。
不同點:JDK自帶的開發工具隻能使用JDK自己目錄下的JRE,不能使用JDK外面的JRE。
           

五、從Java技術關注的重點業務劃分Java技術體系

1.Java Card:支援一些Java小程式(Applets)(如智能卡)上的平台。

2.Java ME(Micro Edition):支援Java程式運作在移動終端(手機、ipad)上的平台。

3.Java SE(Standard Edition):支援面向桌面級應用的平台,提供完整Java核心API,以前稱J2SE。

4.Java EE(Enterprise Edition):支援使用多層架構的企業應用,提供了Java SE API外,還提供了大量的擴充,以前稱J2EE。

Java核心API:多數以java.*命名,也包含少數javax.*命名的包; Java EE提供的擴充包都是以javax.*命名的包。

六、資料來源:

java體系結構

java面試中三者之間的關系