讀 Differences between JDK, JRE and JVM

JDK

Java Development Kit
Java applications and applets 的開發環境。它包括 JRE,java解釋/加載工具( java),編譯工具( javac ),歸檔工具( jar ),文檔生成工具( javac ) 以及其他的 java 開發需要的工具

JRE

Java RunTime Environment

運行 java 程序所需要的最小要求,包括 JVM,core classes 以及 supporting files

JVM

Java Virtual Machie

JVM 規格說明書規定了 JVM 是如何工作的,具體的實現算法有各個實現者選擇。當我們在命令行運行 java class 的時候,就會創建一個 JVM 實例

JDK vs JRE vs JVM

在這裏插入圖片描述JDK 僅僅用於 Java Developers,它包括:

  1. 開發工具,用來提供 Java 開發環境來開發 java 程序
  2. JRE,用來運行 java 程序

JRE 僅僅是用來運行 java 程序的
提供運行 java 程序的環境

JVM 是 JRE 和 JDK 的重要組成部分
使用 JRE 或者 JDK 來運行 java 程序,最終 java 程序都會進入 JVM,然後 JVM 負責一行一行的執行 java code

JRE 包括什麼?
  • Deployment technologies
    including deployment, Java Web Start and Java Plug-in.
  • User interface toolkits
    including Abstract Window Toolkit (AWT), Swing, Java 2D, Accessibility, Image I/O, Print Service, Sound, drag and drop (DnD) and input methods.
  • Integration libraries
    including Interface Definition Language (IDL), Java Database Connectivity (JDBC), Java Naming and Directory - - Interface (JNDI), Remote Method Invocation (RMI), Remote Method Invocation Over Internet Inter-Orb Protocol (RMI-IIOP) and scripting.
  • Other base libraries
    including international support, input/output (I/O), extension mechanism, Beans, Java Management Extensions (JMX), Java Native Interface (JNI), Math, Networking, Override Mechanism, Security, Serialization and Java for XML Processing (XML JAXP).
  • Lang and util base libraries
    including lang and util, management, versioning, zip, instrument, reflection, Collections, Concurrency Utilities, Java Archive (JAR), Logging, Preferences API, Ref Objects and Regular Expressions.
  • Java Virtual Machine (JVM)
    including Java HotSpot Client and Server Virtual Machines.
總結

在這裏插入圖片描述

鏈接

Differences between JDK, JRE and JVM

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章