欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jdk和jre的关系和区别(jdk和jre有什么不同)

程序员文章站 2023-11-27 15:35:28
jvm(javavirtualmachine)就是一个虚拟的用于执行bytecode字节码的”虚拟计算机”。它也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。jvm负责将java字节码解释运行...

jvm(javavirtualmachine)就是一个虚拟的用于执行bytecode字节码的”虚拟计算机”。它也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。jvm负责将java字节码解释运行,边解释边运行,这样,速度就会受到一定的影响。

不同的操作系统有不同的虚拟机。(不同的系统要下载不同版本的linxe 、windows、 android的虚拟机)java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编写,随处运行(writeonce,runeverywhere)”。java虚拟机是实现跨平台的核心机制。如图1所示。

jdk和jre的关系和区别(jdk和jre有什么不同)

图1 不同的操作系统有不同的虚拟机

jre(javaruntimeenvironment)包含:java虚拟机、库函数、运行java应用程序所必须的文件。

jdk(javadevelopmentkit)包含:包含jre,以及增加编译器和调试器等用于程序开发的文件。

jdk、jre和jvm的关系如图所示。

jdk和jre的关系和区别(jdk和jre有什么不同)

图2 jdk、jre和jvm的关系

建议:

如果只是要运行java程序,只需要jre就可以。jre通常非常小,其中包含了jvm。

如果要开发java程序,就需要安装jdk。