JVM,JRE,JDK之间的区别和联系

参考:
1.https://blog.csdn.net/qq_21808961/article/details/80647551
2. https://www.cnblogs.com/yangming1996/p/8508187.html
3. JDK文件结构: https://www.cnblogs.com/sunxucool/p/3489314.html

JVM

JVM是Java Virtual Machine(Java虚拟机)的缩写, 是JRE的一部分. JVM只能识别.class文件(字节码文件). java之所以能够实现跨平台就在于java面对不同操作系统时使用不同的虚拟机(JVM), 有 Linux 版本的JVM实现, 也有Windows 版本的JVM实现.可以看出JVM本身不具有跨平台性, 但不同平台的JVM可以将同一个.class文件解释并映射为本地CPU的机器指令或操作系统的系统调用, 以实现跨平台. 换句话说, JVM其实就是为了完成字节码文件和本地的机器指令之间的映射.

JRE

Java Runtime Environment(JRE)是运行JAVA程序所必须的环境的集合, 它主要包含两个部分, JVM 的标准实现和 Java 的一些基本类库. 简言之, JRE = JVM + 基本lib .在Java平台下, 所有的Java程序都需要在JRE下才能运行, 它是针对java用户的. 当我们只需要运行Java程序的时候, 在电脑上安装JRE即可. 与JDK不同, 它不包含开发工具–编译器, 调试器和其它工具, 而这些只在JDK中才有.

JDK

JDK(Java Development Kit)是整个Java的核心, 包括了Java运行环境JRE, Java工具(javac,java,jdb)和Java基础类库(即Java API). 它是用来开发Java程序的, 如果要进行java程序开发,就必须安装JDK, 它是针对java开发者的. 即JDK = JRE +开发工具. 下面简要介绍一下JDk的文件目录结构. bin:JDK包含的一些开发工具执行文件, 如编译命令javac.exe. lib: Java开发工具要用的一些库文件. jre:JDK使用的Java运行环境(JRE)的根目录, 这个运行环境实现了Java平台.下图是JDK详细的目录结构, 更多信息可以参考[3].
在这里插入图片描述
我们使用下图来直观反映三者的关系.
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值