JDK、JRE、JVM之间的关系是什么?

目录

JVM、JRE、JDK的关系?

 JDK、JRE、JVM都是什么?

JVM

JRE

JDK


JVM、JRE、JDK的关系?

三者包含关系:

JDK>JRE>JVM

JDK、JRE、JVM之间的关系是什么?_第1张图片

 JDK、JRE、JVM都是什么?

jdk:是用于java开发的最小环境 包括:java程序设计语言、Java虚拟机,java类库

jre:是java程序运行的标准环境。包含java虚拟机,Java类库

jvm:java虚拟机

JVM

JVM全称(Java Virtual Machine),就是我们很耳熟的Java虚拟机。它能够识别.class后缀的文件,并且能够解析它的指令,最终调用操作系统上的函数,完成我们想要的操作。

其实就相当于我们的操作系统,是负责翻译或者解释.class文件的,识别.class中的指令,从而调用操作系统中的指令。

在C和C++中,编译成的二进制文件是操作系统能够直接看懂的,java编译成的.class文件则是操作系统不认识的,还需要使用java命令去执行它

可以理解为java程序其实就是在JVM中运行的,JVM是使Java程序能够运行并且能够使之跨平台运行的核心。

JRE

JVM虽然功能强大,但是还是需要其他的小伙伴给它提供原料(.class文件)。

如果只是靠JVM是无法实现java的一次编译到处运行的,他还需要一个基本的类库,也就是API

java体系中,当一个程序运行时,JVM也会一起运行和一起销毁,会一次性将JVM运行所需的类库都传递给它。JVM标准加上实现的一大堆基础类库,就组成了java的运行时环境 也就是JRE

有了JRE之后,我们就可以在任意系统中运行java程序了

JDK

当我们只想运行java程序的话,只需要jre就可以了,但是如果想编写java程序就需要用到jdk

需要注意的是:这里所说的java程序指的是.class文件,可以直接理解为jdk就是将.java文件编译成.class文件,然后交给jre去执行

JDK是工具,JRE是环境

你可能感兴趣的:(java,jvm,开发语言)