黑马程序员技术交流社区

标题: JDK,JRE,JVM的特点问题 [打印本页]

作者: _王涛    时间: 2013-3-25 09:27
标题: JDK,JRE,JVM的特点问题
我们都知道,JDK是java开发工具包,JRE是java运行环境,JVM是java虚拟机,而且JDK包含了JRE,

那么,我却不大理解JDK,JRE,JVM它们分别到底有什么特点呢?有谁可以详细阐述一下各自的特点?
作者: 飞天小猪猪    时间: 2013-3-25 10:43
JVM就是java虚拟机,是整个java实现跨平台的 最核心的部分,java程序会先被编译为.class的类文件,然后才能在虚拟机上执行,class文件不是直接与机器的操作系统相对应,而是通过JVM间接也操作系统交互,由虚拟机将程序解释给本地系统执行,每一种系统都有对应的JVM,通过JAM执行class文件,就实现了java的跨平台。
JRE是指java运行环境。光有JVM还不能让class的执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。在JDK的安装目录里你可以找到jre目录,里面有两个文件夹bin和lib,在 其中bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。
JDK是java开发工具包,这个个包中含有bin、include、lib、 jre等文件夹。
关系是:DK包含JRE,而JRE包 含JVM。
       bin:最主要的是编译器(javac.exe)
       include:java和JVM交互用的头文件
       lib:类库
       jre:java运行环境
作者: 王浩威    时间: 2013-3-25 11:49
打个比方吧。
JDK是人体
JVM是大脑。
JRE是脚
JDK(人体)包括JVM(大脑)和JRE(脚)
要想回家(编程)
第1步,大脑要给脚发送信号(语言)。
第2步,脚给大脑提供实施地点(环境)
第3步,你才会到家。
作者: 刘凯    时间: 2013-3-25 12:01
HM朱俊 发表于 2013-3-25 10:43
JVM就是java虚拟机,是整个java实现跨平台的 最核心的部分,java程序会先被编译为.class的类文件,然后才能 ...

对这个还真不是很了解,只是知道个大概,学习了 ,
作者: _王涛    时间: 2013-3-25 12:31
HM朱俊 发表于 2013-3-25 10:43
JVM就是java虚拟机,是整个java实现跨平台的 最核心的部分,java程序会先被编译为.class的类文件,然后才能 ...

谢谢...:D




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2