Java面试题jdk,jre,jvm的区别

Java (64) 2023-12-14 09:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说Java面试题jdk,jre,jvm的区别,希望能够帮助你!!!。

JDK: Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。包含了JRE。

JRE: Java Runtime Environment 的简称,java 运行环境,为 java 的运行提供了所需环境。它包括Java虚拟机(jvm)、Java核心类库和支持文件。

JVM: Java Virtual Machine 的简称,Java虚拟机,执行编译后的字节码文件(.class文件)。引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。这就是Java的能够“一次编译,到处运行”的原因。

Java面试题jdk,jre,jvm的区别_https://bianchenghao6.com/blog_Java_第1张

从图中看出JDK 其实包含了 JRE,同时还包含了编译 java 源码的编译器 javac,还包含了很多 java 程序调试和分析的工具。简单来说:如果你需要运行 java 程序,只需安装 JRE 就可以了,如果你需要编写 java 程序,需要安装 JDK。而JRE包含了JVM。

它们之间的关系为JDK包含了JRE,JRE包含了JVM。

所以一个java文件的执行过程是这样的:

Java面试题jdk,jre,jvm的区别_https://bianchenghao6.com/blog_Java_第2张

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

发表回复