你知道JDK、JRE與JVM的區(qū)別嗎?我來告訴你
什么是 JDK?
JDK 的英文全稱是 Java Development Kit。JDK是用于制作程序和Java應用程序的軟件開發(fā)環(huán)境。Java 開發(fā)人員可以在 Windows、macOS、Solaris 和 Linux 上使用,是一個跨平臺編程語言。JDK 幫助他們編寫和運行 Java 程序。可以在同一臺計算機上安裝多個 JDK 版本。
什么是 JRE?
JRE 的英文全稱是 Java Runtime Environment。JRE 是一個旨在運行其他軟件的軟件(有點繞口)。它包含類庫、加載器類和 JVM。簡單來說,如果你想運行 Java 程序,你需要 JRE。如果您不是程序員,則無需安裝 JDK,只需安裝 JRE 即可運行 Java 程序。不過,所有 JDK 版本都與 Java Runtime Environment 捆綁在一起,因此無需在 PC 單獨下載和安裝 JRE。JRE 的完整形式是 Java 運行時環(huán)境。
什么是JVM?
JVM 的英文全稱是Java Virtual Machine。JVM 是一個引擎,它提供運行時環(huán)境驅動 Java 代碼或應用程序。它將 Java 字節(jié)碼轉換為機器語言。JVM 是 Java 運行環(huán)境 (JRE) 的一部分。它不能單獨下載和安裝。要安裝 JVM,您需要安裝 JRE。JVM的就是Java虛擬機。
在許多其他編程語言中,編譯器為特定系統生成機器代碼。但是,Java 編譯器則稱為 JVM 虛擬機生成代碼。
主要區(qū)別
- JDK是一個軟件開發(fā)工具包,而JRE是一個允許Java程序運行的軟件包,JVM則是一個執(zhí)行字節(jié)碼的環(huán)境。
- JDK的全稱是Java Development Kit,JRE的全稱是Java Runtime Environment,而JVM的全稱是Java Virtual Machine。
- JDK 是平臺相關的,JRE 也是平臺相關的,但是 JVM 不是平臺相關的。
- JDK 包含開發(fā)、調試等工具。JRE 包含類庫和其他支持文件,而軟件開發(fā)工具不包含在 JVM 中。
- JDK 附帶安裝程序,另一方面,JRE 僅包含執(zhí)行源代碼的環(huán)境,而 JVM 捆綁在軟件 JDK 和 JRE 中。
為什么要使用 JDK?
以下是使用JDK的重要原因:
- JDK 包含編寫 Java 程序所需的工具,以及執(zhí)行它們的 JRE。
- 它包括編譯器、Java 應用程序啟動器、Appletviewer 等。
- 編譯器將用 Java 編寫的代碼轉換為字節(jié)碼。
- Java 應用程序打開一個 JRE,加載必要的類,并執(zhí)行它的 main 方法。
為什么要使用 JRE?
以下是使用 JRE 的重要原因:
- JRE 包含類庫、JVM 和其他支持文件。它不包含任何用于 Java 開發(fā)的工具,如調試器、編譯器等。
- 它使用重要的包和類,如 math、swingetc、util、lang、awt 和運行時庫。
- 如果您必須運行 Java 程序,就必須在您的系統中安裝 JRE。
為什么選擇JVM?
以下是使用 JVM 的重要原因:
- JVM 提供了一種獨立于平臺的方式來執(zhí)行 Java 源代碼。
- 它有許多庫、工具和框架。
- 一旦你運行 Java 程序,你就可以在任何平臺上運行并節(jié)省大量時間。
- JVM 帶有 JIT(Just-in-Time)編譯器,可將 Java 源代碼轉換為機器語言。因此,它比常規(guī)應用程序運行得更快。
JDK的特點
以下是 JDK的重要特性:
- 它使您能夠在單個 catch 塊中處理多個擴展。
- JDK 包含了 JRE 的所有特性。
- 它包含開發(fā)工具,例如編譯器、調試器等。
- JDK 提供了開發(fā)和執(zhí)行 Java 源代碼的環(huán)境。
- 它可以安裝在 Windows、Unix 和 Mac 操作系統上。
- 菱形運算符可用于指定泛型類型接口,而不是編寫確切的類型接口。
JRE的特點
以下是 JRE 的重要特性:
- Java 運行時環(huán)境是 JVM 實際運行所使用的一組工具。
- JRE 包含部署技術,包括 Java Web Start 和 Java Plug-in。
- 開發(fā)人員可以輕松地在 JRE 中運行源代碼,但不能編寫和編譯 Java 程序。
- 它包括集成庫,如 Java 數據庫連接 (JDBC)、遠程方法調用 (RMI)、Java 命名和目錄接口 (JNDI) 等。
- JRE 有 JVM 和 Java HotSpot 虛擬機客戶端。
JVM的特點
以下是 JVM 的重要特性:
- 它使您能夠在云環(huán)境或設備中運行應用程序。
- Java 虛擬機將字節(jié)碼轉換為特定于機器的代碼。
- 它提供了基本的 Java 功能,如內存管理、安全性、垃圾收集等。
- JVM 通過使用 Java Runtime Environment 提供的庫和文件來運行程序。
- JDK 和 JRE 都包含 Java 虛擬機。
- 它可以逐行執(zhí)行java程序,因此也稱為解釋器。
- JVM 易于定制,例如,您可以為其分配最小和最大內存。
- 它獨立于硬件和操作系統。因此,您可以編寫一次 java 程序并在任何地方運行。