0
点赞
收藏
分享

微信扫一扫

java之JVM,JRE,JDK三者的关系

蓝莲听雨 2022-04-03 阅读 185
java后端

1.为什么要在本地安装JDK,相信很多人都只是为了安装而安装,自己并没有知道其具体原理吧,下面是我学习过程中总结的知识点:

JVM是什么:Java Virtual Machine 虚拟机 源文件.java在虚拟机中通过编译器编译成字节码文件.class,

是整个java实现跨平台的最核心的部分

JRE是什么:java Runtime Environment即java运行环境,作用是运行别人写好的程序(JRE并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器),只是针对于使用Java程序的用户。)

JDK是什么:Java Development Kit开发工具即很多开发时使用到的工具如javac.exe编译工具和java.exe执行工具。我们可以到JDK目录下的bin目录下找到它,它的名称为:javac.exe

工具如图:

11d7b3a4c69e088173c52b576faeeb84.png

注意:javac.exe并不支持双击运行,所以必须使用DOS命令来运行它。

总结:

1.JDK包含JRE,在JDK的安装目录下有一个名为jre的目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。

2.JRE中包含了Java virtual machine(JVM),runtime class libraries和Java application launcher,这些是运行Java程序的必要组件。

3.JVM就是我们常说的java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。但是要注意,因为经过编译后生成的class文件并不能直接在操作系统执行,而是经过虚拟机(相当于中间层)间接与操作系统交互,由虚拟机将程序解释给本地系统执行。而在解释class的时候JVM需要调用解释器所需要的类库lib,而jre包含所需的lib类库。所以想要执行class文件需要JVM和JRE同时存在。只有JVM还不能成class的执行

相当于JVM里层,其次到JRE,最外层是JDK

使用人群分类:JDK是给开发人员用的,JRE和JVM是普通用户用的。

9e1620951c82bfb96205948370214c6f.png

6ddd5fa4cbf9c726a25a8a5cf5836f5f.png

----------------------------------------------------------------------------

2.为什么要配置window的PATH环境变量?

大家来看下没有配置PATH变量之前我们如果想要编译.java文件成.class字节码文件的步骤是:

1.首先明确我的JDK安装在E:demoJavajdk1.8目录,那么编译器完整名称为:E:demoJavajdk1.8injavac.exe;

而我的源文件存放在:E:javaHelloWorld.java;

那么编译命令就是:E:demoJavajdk1.8injavac.exe E:javaHelloWorld.java

于是就会:

e86cae5850f39a90de3ad4c50655a9f3.png

因为每次都要输入E:demoJavajdk1.8injavac.exe这条命令才能进行javac.exe或者java.exe,所以很麻烦。

在偷懒的基础上,我们简化了做法,就是将”E:demoJavajdk1.8in“路径保存到PATH变量中,这样我们使用javac或java时,Windows系统就会自动到“E:demoJavajdk1.8in”路径下查找javac和java了

举报

相关推荐

0 条评论