Java中的JRE,JDK,JVM概念详解

JDK, JRE和JVM是Java开发和运行的核心组件。JDK包含了JRE和一系列开发工具,如javac编译器,用于将.java源代码编译为.class字节码文件。JRE是Java运行时环境,包括JVM和必要的类库,负责执行.class文件。JVM作为JRE的一部分,是虚拟机,负责解析和执行字节码,实现Java的跨平台特性。因此,要运行Java程序,只需JRE;而进行开发,则需要完整的JDK。

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

JRE: Java Runtime Environment,Java运行环境
JDK:Java Development Kit,Java开发工具包
JVM:Java Virtual Machine,Java虚拟机

Java特性“一次编译,到处运行”

Java所谓的“一次编译,到处运行”,其实是有门槛的,那就是编译之后的字节码文件(.class文件)要放在对应的机器JVM中运行,说白了,Java中的JVM就相当于一款软件,这款软件在不同的操作系统上有不同的对应版本。
如果我们有.class文件,那么直接在操作系统中下载对应的JVM便可以运行程序了,但是你有持的是Java的源代码,那么.java文件是不能在JVM中运行的,必须得先编译成.class文件才可以运行,那么我们的编译工具是什么呢——

JDK:Java Development ToolKit(Java开发工具包)

是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。

JRE:Java Runtime Enviromental(java运行时环境)

也就是我们说的JAVA平台,所有的Java程序都要在JRE下才能运行。包括JVM和JAVA核心类库和支持文件。与JDK相比,它不包含开发工具——编译器、调试器和其它工具。

JVM:Java Virtual Mechinal(JAVA虚拟机)

JVM是JRE的一部分,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM 的主要工作是解释自己的指令集(即字节码)并映射到本地的 CPU 的指令集或 OS 的系统调用。Java语言是跨平台运行的,其实就是不同的操作系统,使用不同的JVM映射规则,让其与操作系统无关,完成了跨平台性。JVM 对上层的 Java 源文件是不关心的,它关注的只是由源文件生成的类文件( class file)。类文件的组成包括 JVM 指令集,符号表以及一些补助信息。
在这里插入图片描述
JDK,JRE,JVM之间的关系
JDK包含JRE,JRE包含JVM
在这里插入图片描述
所以我们下载的JDK中就包含jvm,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CFuYuan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值