您的位置:首页 > 编程语言 > Java开发

jdk,jre,jvm的区别

2015-05-20 11:22 232 查看
jdk,jre,jvm是java编程语言的三大核心,没有它们的存在,也不会有java的存在!这三个概念,很多资深的java开发人员有时候也不能很好的说明它们之间的区别,今天就来详细的说下它们三者之间的区别。

1.jdk(java development kit,java开发工具包)

(1)jdk是java语言的核心组件,它提供了编译、调试和运行一个Java程序所需的所有工具,可执行文件和二进制文件。

(2)jdk是一个平台的软件,针对不同的os有不同的安装包。jdk是jre的超集,当然它就包含了jre的所有以及Java编译器,调试器和核心类。

jdk=jre + java编译器 + 调试器 + 核心类

2.jre(java runtime environment,java运行时环境)

(1)jre是jvm的实现,它提供了运行java程序的平台。

(2)jre包含了jvm、java二进制文件和其它程序的类文件。jre不包含如java编译器、调试器之类的开发工具。若只需要执行java程序,只需安装jre就足够了。

3.jvm(java virtual machine,java虚拟机)

(1)jvm是java语言的核心,jvm是存在于操作系统之上的一个软件。jvm包含两个子系统:class loader和execution engine

(2)当运行一个java程序时,jvm会将字节码 --> 机器码。jvm也是平台特定的,且提供了核心的java方法,如:内存管理、垃圾回收。

(2)jvm是一种规范, 是可定制的,如:配置jvm 的初始化内存-Xms和最大化内存-Xmx。

(4)jvm被称为虚拟的是因为它提供了一个独立于操作系统和硬件的接口。该特性才是java程序可一次编写多处执行的原因。

总结:

(1)jdk就是用于java开发的,jre就是运行java程序的。

(2)jvm是java的核心,是有平台独立性的软件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: