JDK,JRE,JVM三者之间的联系和区别?
JDK:全称java development kit ,开发工具包,面向我们的开发者,为开发者提供开发类库,他是java的核心。JDK包含了JRE,一堆工具类(javac,java),JAVA的类库(Object,String)
JRE:全称 java runtime environment。包含了jvm标准实现和需要的类库。JRE是一个运行环境,并非开发工具。
JVM: 它是一个虚拟出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器,堆栈,寄存器等,还具有相应的指令系统。java语言最重要的特点就是跨平台运行。使用JVM就是为了实现跨平台。
三者的联系:
JVM 不能够单独的搞定 class 文件,解释 class 的时候, jvm (D:\JDK\bin) 需要调用我们所需要的类库(D:\JDK\lib)。JVM +lib = JRE 总体来说,我们利用JDK开发了属于我们自己的程序,通过JDK的javac 工具包进行了编译,将java文件编译称为了class 文件(字节码文件),在JRE上运行这些文件的时候,JVM进行了这些文件的翻译。
三者的区别:
JDK 和 JRE 的区别: jdk 是开发工具包,包含了JRE ; JRE是运行环境,不提供开发工具包。
JRE和JVM的区别: JRE 包含了JVM,JRE = JVM + lib。 JRE为 class 文件提供了运行的环境,但是需要JVM 进行class 文件的翻译,JVM 将翻译好的文件传给 os 系统或者是CPU 映射指令集,才能够最终完成运行。
从图中我们看到,当我们点击了我们的main方法,一个后台进程就创建了,用eclipse创建了一个javaw.exe。 javaw.exe就是我们大的一个虚拟机。(连续点击了n次main 方法,发现创建了n个jvm虚拟机,也就是说,
本文地址:https://blog.csdn.net/GTC_GZ/article/details/107593148
推荐阅读
-
Java web Filter, Strurs2 Interceptor 和 SpringMVC Interceptor 三者之间的联系与区别
-
jdk和jre的关系和区别(jdk和jre有什么不同)
-
jdk和jre的关系和区别(jdk和jre有什么不同)
-
黄酒红酒哪个好,两者之间的区别和联系你了解了吗
-
西夏和东西之间有什么联系呢 两者间的区别如何
-
JDK,JRE和JVM是什么?三者有什么关系?二分钟搞定!!!
-
JDK,JRE,JVM三者之间的联系和区别?
-
JDK、JRE、JVM三者间的联系与区别
-
什么是CPU、APU和GPU,它们之间的有什么区别和联系?
-
Hadoop与MPP之间的关系是什么?有什么区别和联系?