详解Java语言中JDK、JVM、JRE三者是什么和之间的关系

jdkjvmjre

三者是什么?

JDK

 JDK全称(Java Development Kit),根据其意思我们可以看出来其是Java开发时环境和所包含的配套元件,是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库。

这里要提一下javac,这个工具,其本质就是一个编译器,用来将程序员写好的Java代码编译成Class文件,这时候才能使用java命令进行运行,运行时是运行的编译好的Class文件,而不是我们写好的java文件。

JDK包含了JRE和JVM,程序员在开发时候需要进行运行调试,这个时候就需要用到JRE和JVM进行程序的运行调试。

JRE

 JRE全称(Java Runtime Environment),很显然我们看到全称,就很容易的理解,它是Java运行时环境,包含了运行Java程序的所有配置工具,其中包括JVM。

用户在使用时,并不需要将我们写的Java文件进行编译,用户拿到的只是的打包好的jar包或者war包,本质上是Class文件,就不需要类似于javac编译器这种工具,只需要运行时的一些类库,和JVM即可。

JVM

 JVM全称(Java Virtual Machine),即为Java虚拟机,是Java将编译好的Class文件进行解释,解释成操作系统能够识别的字节码,然后进行执行。Java的一个特性就是一次编译,到处运行,就是基于JVM的,JVM就相当于一本字典,无论版本如何,字典内输出的内容都是相同的,无论在那种环境下,通过JVM解释的含义都是相同的,这就实现了一次编译,到处运行。

三者的关系

 JDK中包含了JRE和JVM,JRE中包含了JVM。
三者的关系并不难懂,实质上根据需求来分析很容易。
 JDK是程序员编写时需要用到的,需要进行程序的调试,所以这里就必须包括编译运行的相关工具,还需要编写程序相关的工具。
 JRE是运行时环境,通常是用户进行使用,用户进行只是使用,并不会重新编写程序,更不会去调试,所以只需要进行运行就可以了,不需要相关的编译工具,需要相关的类库工具和JVM即可。
 JVM是把Class文件进行解释的工具,是虚拟化出来的一个独立的机器,在程序运行时需要使用。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

友人和他的朋友们

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

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

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

打赏作者

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

抵扣说明:

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

余额充值