💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# Java JDK,JRE 和 JVM > 原文: [https://www.programiz.com/java-programming/jvm-jre-jdk](https://www.programiz.com/java-programming/jvm-jre-jdk) #### 在本教程中,您将了解 JDK,JRE 和 JVM。 您还将学习它们之间的主要区别。 ## 什么是 JVM? JVM(Java 虚拟机)是使您的计算机运行 Java 程序的抽象机。 运行 Java 程序时,Java 编译器首先将 Java 代码编译为字节码。 然后,JVM 将字节码转换为本地机器代码(计算机 CPU 直接执行的指令集)。 Java 是与平台无关的语言。 这是因为当您编写 Java 代码时,它最终是为 JVM 而不是物理机(计算机)编写的。 由于 JVM 执行与平台无关的 Java 字节码,因此 Java 与平台无关。 ![How does Java program work?](https://img.kancloud.cn/70/89/7089649e0168a001ae83faef30d17d15_704x86.png "Working of Java Program") Java 程序的原理 如果您对学习 JVM 架构感兴趣,请访问 [JVM 架构说明](https://dzone.com/articles/jvm-architecture-explained)。 * * * ## 什么是 JRE? JRE(Java 运行时环境)是一个包,提供 Java 类库,Java 虚拟机(JVM)和运行 Java 应用所需的其他组件。 JRE 是 JVM 的超集。 ![JRE contains JVM and other Java class libraries.](https://img.kancloud.cn/ef/2a/ef2aec1675193ff732427b8c7547f0f2_350x93.png "Java Runtime Environment") Java 运行时环境 如果您需要运行 Java 程序而不是开发它们,则需要 JRE。 您可以从 [Java SE Runtime Environment 8 下载](http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html)页面下载 JRE。 * * * ## 什么是 JDK? JDK(Java 开发套件)是使用 Java 开发应用所需的软件开发套件。 当您下载 JDK 时,还将同时下载 JRE。 除了 JRE,JDK 还包含许多开发工具(编译器,JavaDoc,Java Debugger 等)。 ![JDK contains JRE and other tools to develop Java applications.](https://img.kancloud.cn/0e/36/0e36a14a9b1229220df54e8648c8db59_370x101.png "Java development kit") Java 开发套件 如果要开发 Java 应用,请[下载 JDK](http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html) 。 * * * ## JVM,JRE 和 JDK 之间的关系。 ![JRE contains JVM and class libraries and JDK contains JRE, compilers, debuggers, and JavaDoc](https://img.kancloud.cn/9a/cd/9acd5b7943370a04ee72f675405fce23_384x346.png "Relationship between JVM, JRE, and JDK") JVM,JRE 和 JDK 之间的关系