1. 程式人生 > >JDK,JRE,JVM三者間的關係

JDK,JRE,JVM三者間的關係

JDK(Java Development Kit)是Sun Microsystems針對Java開發員的產品。JDK 是整個Java的核心,包括了Java執行環境、Java工具和Java基礎類庫。

JRE(Java Runtime Environment)是執行JAVA程式所必須的環境的集合,包含JVM標準實現及Java核心類庫。

JVM(Java Virtual Machine[Java虛擬機器])是整個java實現跨平臺的最核心的部分,能夠執行以Java語言寫作的軟體程式。

三者間的關係如圖:


JDK(Java Development Kit)

  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)。  ①SE(J2SE),standard edition,標準版,是我們通常用的一個版本,從JDK 5.0開始,改名為Java SE。  ②EE(J2EE),enterprise edition,企業版,使用這種JDK開發J2EE應用程式,從JDK 5.0開始,改名為Java EE。
  ③ME(J2ME),micro edition,主要用於移動裝置、嵌入式裝置上的java應用程式,從JDK 5.0開始,改名為Java ME。

金字塔結構 JDK=JRE+JVM+其它 執行Java程式一般都要求使用者的電腦安裝JRE環境(Java Runtime Environment);沒有jre,java程式無法執行;而沒有java程式,jre就沒有用武之地。

JRE(Java Runtime Environment)

  是執行基於Java語言編寫的程式所不可缺少的執行環境。也是通過它,Java的開發者才得以將自己開發的程式釋出到使用者手中,讓使用者使用。  JRE中包含了Java virtual machine(JVM),runtime class libraries和Java application launcher,這些是執行Java程式的必要元件。
  與大家熟知的JDK不同,JRE是Java執行環境,並不是一個開發環境,所以沒有包含任何開發工具(如編譯器和偵錯程式),只是針對於使用Java程式的使用者。 
JVM(java virtual machine)
  就是我們常說的java虛擬機器,它是整個java實現跨平臺的最核心的部分,所有的java程式會首先被編譯為.class的類檔案,這種類檔案可以在虛擬機器上執行。  也就是說class並不直接與機器的作業系統相對應,而是經過虛擬機器間接與作業系統互動,由虛擬機器將程式解釋給本地系統執行。  只有JVM還不能成class的執行,因為在解釋class的時候JVM需要呼叫解釋所需要的類庫lib,而jre包含lib類庫。  JVM遮蔽了與具體作業系統平臺相關的資訊,使得Java程式只需生成在Java虛擬機器上執行的目的碼(位元組碼),就可以在多種平臺上不加修改地執行。

文章來源:http://playkid.blog.163.com/blog/static/56287260201372113842153/

相關推薦

Java學習入門--(1)JDKJREJVM三者關係

學習JAVA前必須瞭解Java跨平臺特性,Java 為什麼能跨平臺,實現一次編寫,多處執行?Java 能夠跨平臺執行的核心在於 JVM(Java虛擬機器) 。不是 Java 能夠跨平臺,而是它的 jvm 能夠跨平臺執行。我們知道,不同的作業系統向上的 API 肯定是不同的,那麼如果我們想要寫一段程式碼呼

JDKJREJVM三者關係

JDK : JavaDevelopment ToolKit(Java開發工具包)。JDK是整個JAVA的核心,包括了Java執行環境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基礎的類庫(即JavaAPI

JDKJREJVM三者的關系

包括 虛擬機 java虛擬機 machine jvm 平臺 核心 運行環境 jre JDK(Java Development Kit)是針對Java開發員的產品,是整個Java的核心,包括了Java運行環境JRE、Java工具和Java基礎類庫。Java Runtime E

Java學習入門--(1)JDKJREJVM三者的關系

java跨平臺 -- kit windows 能夠 machine 類庫 javac -o 學習JAVA前必須了解Java跨平臺特性,Java 為什麽能跨平臺,實現一次編寫,多處運行?Java 能夠跨平臺運行的核心在於 JVM(Java虛擬機) 。不是 Java 能夠跨平臺

JDKJREJVM三者關系

src jvm javac jre 瀏覽器 image 富客 16px 完成 一、JDK、JRE、JVM三者的關系 JDK包含了JRE和JVM,JRE包含了JVM,其中JRE中沒有javac 附一張官網的詳細圖: 二、RIA RIA(富客戶端):能完成瀏覽器無法完

jdkjrejvm之間的關係

JDK是java的開發環境 Javadoc用於描述類或者方法的作用。可寫在類或者方法的上面。在註釋中用@開頭的東西就稱之為Javadoc文件標記,是JDK定義好的,如@auther,@version。 Javac.exe是把一個檔案生成class檔案,java.

JDKJREJVM之間的關係

總的說來他們的關係是:JDK>JRE>JVM  具體說來:  如果安裝了JDK,會發同你的電腦有兩套JRE,一套位於 <JDK安裝目錄>/jre,另外一套位於 C:/Program Files/Java/jre1.5.0_02 目錄下。後面這套比前面那

JDKJREJVM三者關係

JDK(Java Development Kit)是Sun Microsystems針對Java開發員的產品。JDK 是整個Java的核心,包括了Java執行環境、Java工具和Java基礎類庫。JRE(Java Runtime Environment)是執行JAVA程式所必

jdkjrejvm三者之間的關係

總概括來說,java的核心是jdk,是供程式設計師使用的產品,jdk包含jre,jre包含jvm(java虛擬機器) JDK(Java Development Kit)   JDK是Java開發工具包,是Sun Microsystems針對Java開發員的產品。   J

jdkjrejvm三者的聯絡和區別

三者聯絡Java 喊出的帶有標誌性的口號“ Write Once , Run Anywhere (一次編寫,到處執行)”,正是建立在 JRE 的基礎之上。何以實現?就是在 Java 應用程式和作業系統之間增加了一虛擬層-- JRE 。程式原始碼不是直 接編譯、連結成機器程式碼,而是先轉化到位元組碼( byte

詳解JDKJREJVM之間的關係

JDK : Java Development ToolKit(Java開發工具包)。JDK是整個JAVA的核心,包括了Java執行環境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基礎的類庫(即Java API 包括rt.jar)。最主流的JD

JDKJREJVM是什麼關係

![](https://img-blog.csdnimg.cn/20201224083231703.jpg) 作者:小傅哥 部落格:[https://bugstack.cn](https://bugstack.cn) Github:[https://github.com/fuzhengwei/CodeGuid

jvm內存模型-回收算法-和內存分配以及jdkjrejvm是什麽關系(阿裏美團京東面試題)

ati alt 字面量 可用內存 硬件 都是 escape 物理 nap 1.什麽是jvm?(1)jvm是一種用於計算設備的規範,它是一個虛構出來的機器,是通過在實際的計算機上仿真模擬各種功能實現的。(2)jvm包含一套字節碼指令集,一組寄存器,一個棧,一個垃圾回收堆和一個

Java中的JDKJREJVM之間的區別

run 編譯 java 發布 開發 特性 底層 應用程序 解釋 JDK(Java Development Kit)是針對Java開發員的產品,是整個Java的核心,包括了Java運行環境JRE、Java工具和Java基礎類庫。Java Runtime Environment

【Java】認識 JDKJREJVM

JDK,JRE,JVM 今天我們討論下這三個Java工具 JDK         全稱Java Development ToolKit(Java 開發工具包)。 JDK是整個JAVA的核心,其包括了Java執行環境(Java Runtime Envirnment)

JAVA-關於JDKJREJVM的區別

JAVA具有一個顯著特性是平臺無關性。 一個JAVA程式,要通過編譯器才能將原始碼轉換為另一種可執行的格式(位元組碼,原生代碼等) 位元組碼本身不能執行,位元組碼要在JAVA虛擬機器(JVM)上執行,並將位元組碼進行解釋。 JAVA原始碼–編譯–位元組碼–各平臺的JVM JVM是JAVA

jdk,jre,jvm 三者的差別與聯絡

           學習java有近1年半了,自以為學的挺不錯。有一次筆試遇到一道題,請說說jdk,jre,jvm的區別與聯絡;javaSE,javaEE,javaME,j2SE,J2ME,J2EE

區別:JDKJREJVMJIT

JDK:java development kit,oracle(現在是sun)的一個產品,不僅包含了jre,還有compiler,debugger等等,相當於eclipse。 JRE:java runtime environment,就是平常電腦沒有java要下載的java

關於JDKJREJVM寫的最好的文章。

關於jdk和jre  大家肯定在安裝JDK的時候會有選擇是否安裝單獨的jre,一般都會一起安裝,我也建議大家這樣做。因為這樣更能幫助大家弄清楚它們的區別: Jre 是java runtime environment, 是java程式的執行環境。既然是執行,當然要包含jvm,也就是大家熟悉的虛擬機器啦,還有所

Java中JDK,JREJVM之間的關係-(轉載)

初學JAVA很容易被其中的很多概念弄的傻傻分不清楚,首先從概念上理解一下吧,JDK(Java Development Kit)簡單理解就是Java開發工具包,JRE(Java Runtime Enviroment)是Java的執行環境,JVM( java virtual machine)也就是