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虛擬機器上執行的目標程式碼(字節碼),就可以在多種平台上不加修改地運作。
以上就是本文的全部內容,希望本文的內容對大家的學習或是工作能帶來一定的幫助,同時也希望多多支持PHP中文網!
更多詳解Java中的JDK、JRE、JVM相關文章請關注PHP中文網!