JDK JRE JVM解释及Java代码编译运行过程

JDK是Java开发工具包,包含JRE和开发工具,是编写Java程序的基础。JRE是Java运行时环境,是运行Java程序的必备条件,包括JVM。JVM作为Java语言跨平台的关键,将Java代码转化为操作系统可执行的指令。JDK、JRE和JVM三者间相互配合,确保Java程序的开发与执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JDK

JDK(Java Development Kit) — Java开发工具包 — JRE+开发工具
开发java程序最小的环境为JDK,所以JDK是JAVA语言的核心。

JRE

JRE(Java Runtime Environment) — Java运行时环境 — JVM+运行java程序所必需的环境
运行java程序最小的环境为JRE。

JVM

JVM(Java Virtual Machine)—负责加载.class并运行.class文件。
JVM(JAVA虚拟机)将JAVA代码转换为对应的操作系统可以理解的指令,不同的操作系统有不同虚拟机与之对应,同一段代码交给虚拟机之后,虚拟机再转化给操作系统。

三者间关系如图

在这里插入图片描述

Java代码编译运行

注意JVM是Java语言能够跨平台的前提,但是JVM本身不跨平台
在这里插入图片描述

### JDKJREJVM 的概念及区别 #### 1. JDK (Java Development Kit) JDKJava 开发工具包,主要面向开发者设计。它包含了编译器 (`javac`)、调试器和其他开发所需的工具和库文件。通过 JDK开发者能够编写、测试并部署 Java 应用程序。值得注意的是,JDK 中已经内置了 JRE,因此安装 JDK 后可以直接运行 Java 程序[^1]。 #### 2. JRE (Java Runtime Environment) JREJava 运行时环境,专注于提供运行已有的 Java 程序所需的支持。它的核心组成部分是 JVMJava 虚拟机)。对于仅需运行 Java 程序而不涉及开发工作的场景来说,单独安装 JRE 就足够了。 #### 3. JVM (Java Virtual Machine) JVM 是一个抽象的计算机模型,定义了一种规范来解释或执行 Java 字节码。它是 Java 实现跨平台特性的核心技术所在。无论是在 Windows、Linux 或 macOS 上,只要存在对应的 JVM 实现,就可以无缝运行同一份 Java 程序[^4]。此外,JVM 提供了许多高级特性,比如内存管理、垃圾回收机制以及 JIT 编译优化等功能[^5]。 #### 区别总结 | **名称** | **描述** | **用途** | |----------|----------------------------------------------------------------------------------------------|--------------------------------------------| | JDK | 包括编译器、调试器及其他开发工具;包含完整的 JRE | 面向开发者,用于创建新的 Java 应用 | | JRE | 只包含运行现有 Java 程序所需要的类库及相关资源 | 用户端用来启动和操作 Java 应用 | | JVM | 抽象层面上的一个虚拟处理器,负责加载 .class 文件并将它们转换成底层硬件可理解的形式 | 执行字节码,保障 Java 程序能在多种平台上运作 | ```java public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); // 此代码JDK 编译后,在 JVM运行。 } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值