JDK、JRE、JVM JDK包含JRE,而JRE包含JVM JDK(Java Development Kit)是針對Java開發員的產品,是整個Java的核心,包括了Java運行環境JRE、Java工具和Java基礎類庫。Java Runtime Environment(JRE)是運行JAVA程式 ...
JDK、JRE、JVM
JDK包含JRE,而JRE包含JVM
JDK(Java Development Kit)是針對Java開發員的產品,是整個Java的核心,包括了Java運行環境JRE、Java工具和Java基礎類庫。Java Runtime Environment(JRE)是運行JAVA程式所必須的環境的集合,包含JVM標準實現及Java核心類庫。JVM是Java Virtual Machine(Java虛擬機)的縮寫,是整個java實現跨平臺的最核心的部分,能夠運行以Java語言寫作的軟體程式。
JDK
- JDK是Java開發工具包,是Sun Microsystems針對Java開發員的產品。
- JDK中包含JRE,在JDK的安裝目錄下有一個名為jre的目錄,裡面有兩個文件夾bin和lib,在這裡可以認為bin里的就是jvm,lib中則是jvm工作所需要的類庫,而jvm和 lib和>起來就稱為jre。
- JDK是整個JAVA的核心,包括了Java運行環境JRE(Java Runtime Envirnment)、一堆Java工具(javac/java/jdb等)和Java基礎的類庫(即Java API 包括>rt.jar)。
Java Runtime Environment(JRE)
- JRE是運行基於Java語言編寫的程式所不可缺少的運行環境。也是通過它,Java的開發者才得以將自己開發的程式發佈到用戶手中,讓用戶使用。
- JRE中包含了Java virtual machine(JVM),runtime class libraries和Java application launcher,這些是運行Java程式的必要組件。
- 與JDK不同,JRE是Java運行環境,並不是一個開發環境,所以沒有包含任何開發工具(如編譯器和調試器),只是針對於使用Java程式的用戶。
JVM
- JVM是整個java實現跨平臺的最核心的部分,所有的java程式會首先被編譯為.class的類文件,這種類文件可以在虛擬機上執行。class並不直接與機器的操作系統相對應,而是經過虛擬機間接與操作系統交互,由虛擬機將程式解釋給本地系統執行。
- 只有JVM還不能產生class的執行,因為在解釋class的時候JVM需要調用解釋所需要的類庫lib,而jre包含lib類庫。在JDK下麵的的jre目錄裡面有兩個文件夾bin和lib,在這裡可以認為bin里的就是jvm,lib中則是jvm工作所需要的類庫,而jvm和 lib和起來就稱為jre。JVM屏蔽了與具體操作系統平臺相關的信息,使得Java程式只需生成在Java虛擬機上運行的目標代碼(位元組碼),就可以在多種平臺上不加修改地運行。