面试——JDK 和 JRE 、JVM有什么区别?

1、组成:

JDK: Java Development Kit 的英文缩写,中文翻译:Java开发工具包包括了Java运行环境 jre,很多的Java工具(编译工具javac.exe,运行工具java.exe,打包工具jar.exe等),以及一些Java核心类库

JRE: Java Runtime Environment 的英文缩写,中文翻译:Java运行环境包括java虚拟机和java程序所需要的核心类库等(一些API中常用的系统类等)

JVM:Java Virtual Machine 的英文缩写,中文翻译:Java虚拟机。是Java实现跨平台的最核心部分。所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。由虚拟机将程序解释给本地系统执行。

2、联系 :

JDK=JRE+开发工具集,JRE=JVM+java核心类库(一些API中常用的系统类)
JVM不能单独搞定class的执行,解释class的时候JVM需要调用解释所需要的类库lib。在JDK下面的jre目录里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的核心类库,而jvm和 lib和起来就称为jre。JVM+Lib=JRE。总体来说就是,我们利用JDK(调用JAVA API)开发了JAVA程序后,通过JDK中的编译工具(javac)将java文件编译成JAVA字节码,在JRE上运行这些JAVA字节码JVM解析这些字节码,映射到CPU指令集或OS的系统调用。

在这里插入图片描述

3.使用人群:

由功能不同造就使用对象不同,jdk面向程序开发者,jre面向程序使用者

总结如图:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_38568503/article/details/114269217