JDK和JRE和JVM的作用与区别
-
JVM
JVM:(Java Virtual Machine)就是一个虚拟的用于执行bytecode字节码的”虚拟计算机”。它也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。JVM负责将Java字节码,java class code解释运行,边解释边运行,这样,速度就会受到一定的影响。不同的操作系统有不同 的虚拟机。Java 虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编写,随处运行(Write once, run everywhere)”。 Java虚拟机是实现跨平台的核心机制。
-
JRE
JRE:Java运行环境(英文全称:Java Runtime Environment ) 包含:Java虚拟机、库函数、运行Java应用程序所必须的文件。 -
JDK
JDK: Java 语言的软件开发工具包(英文全称:Java Development Kit )包含:JRE,以及增加编译器和调试器等用于程序开发的文件。
所以说JDK、JRE和JVM的关系是一种包含关系如下图所示。