JVM、JDK、JRE三者的關係
JVM、JDK、JRE三者的關係
- JDK(Java Development Kit):是sun公司給java開發者使用的java開發工具包。JDK包含JRE,在JDK的安裝目錄下有一個名為jre的目錄,裡面有兩個資料夾bin和lib,在這裡可以認為bin中的就是JVM,lib中的就是JVM工作所需要的類庫,而JVM和類庫合在一起就稱為JRE。JDK是整個java的核心,包括了JRE、Java工具(javac、java、jdb等)和Java基礎的類庫(即Java API包括rt.jar)
- JRE(Java runtime environment):是執行基於Java語言編寫的程式所不可缺少的執行環境。JRE包含了JVM的標準實現和Java核心類庫。
- JVM(Java Virtual Machine):也就是虛擬機器,是整個Java實現跨平臺的最核心部分。它的任務就是將位元組碼指令進行識別並解釋成具體系統平臺的機器指令(這個過程需要呼叫解釋所需要的jre目錄下的類庫lib)。
關係圖如下
總結
這樣我們就可以理出一條線路了,我們利用了JDK中的API開發了Java程式後,通過JDK中的javac編譯器將Java檔案編譯成位元組碼檔案,然後在(JRE這個環境下)JVM中解釋這些Java位元組碼檔案。
相關文章
- jdk、jre、jvm三者關係JDKJVM
- [java基礎]之JVM/JRE/JDK三者的關係JavaJVMJDK
- JDK、JRE、JVM,是什麼關係?JDKJVM
- jre 和 jdk的關係JDK
- JDK JRE JVMJDKJVM
- JDK,JRE,JVMJDKJVM
- JDK,JRE和JVMJDKJVM
- JDK、JRE和JVMJDKJVM
- JDK.JRE和JVMJDKJVM
- JDK、JRE和JVM簡述JDKJVM
- JDK和JREJDK
- 瞭解JDK、JRE、JVM及Java程式的編譯與執行JDKJVMJava編譯
- # uwsgi 的 processes , threads , workers 三者的關係thread
- setup與data、methods三者間的關係
- 談談 JDK 和 SAPMachine 的關係JDKMac
- JRE 和 JDK 的區別詳解JDK
- 底層剖析 Window 、Activity、 View 三者關係View
- JRE與JDK的區別與聯絡JDK
- 啟動idea報Failed to load JVM DLL..jre\bin\jvm.dll,If you already have 32-bit JDK installedIdeaAIJVMJDK
- 一文看懂IP、UDP和TCP三者的關係UDPTCP
- 啟動intellij時報錯Failed to load JVM DLL..jre\bin\jvm.dll,If you already have 32-bit JDK installedIntelliJAIJVMJDK
- tep環境變數、fixtures、用例三者之間的關係變數
- 關於w10配置java jdk以及jre環境變數問題JavaJDK變數
- 學習scala,java安裝jdk及jre的問題JavaJDK
- 面試官:伺服器安裝JDK還是JRE?可以只安裝JRE嗎?面試伺服器JDK
- 安裝JDK8出現安裝Jre的視窗JDK
- Spring系列:Spring版本和JDK版本對應關係SpringJDK
- Linux的匯流排-裝置-驅動三者之間的關係和框架的理解Linux框架
- 面試官:什麼是JDK什麼是JRE?伺服器可以只安裝JRE嗎?面試JDK伺服器
- 時間解析度、取樣率與取樣深度三者關係理解
- JDK中自帶的JVM分析工具JDKJVM
- jdk8安裝後兩個資料夾,分別是jre、jdk表示什麼?JDK
- 表的關聯關係
- 關於MyEclipse中build path和compiler的jre不匹配EclipseUICompile
- (Python教程)什麼是機器學習、人工智慧、深度學習,三者又是什麼關係?Python機器學習人工智慧深度學習
- 【集合論】二元關係 ( 二元關係記法 | A 到 B 的二元關係 | 二元關係個數 | 二元關係示例 )
- Android開發中Gradle外掛,Gradle版本與JDK版本之間的對應關係 AndroidAndroidGradleJDK
- 記憶體屏障在CPU、JVM、JDK中的實現記憶體JVMJDK