当前位置: 移动技术网 > IT编程>开发语言>Java > JDK、JRE、JVM三者间的联系与区别

JDK、JRE、JVM三者间的联系与区别

2019年01月15日  | 移动技术网IT编程  | 我要评论

450002邮编,辽宁省公安厅厅长,闺蜜乱了电视剧

  有java编程经验的程序员应该都知道:java程序是运行在jvm(java虚拟机)上的,在开发程序之前都要配置java开发环境,其中首先要做的就是jdk的安装和配置,那么jdk、jvm、jre到底有何联系和区别呢?想必并不是每一个程序员都能说得清楚的,本文接下来将带你了解它们之间的关系。

一、jdk

  jdk(java se development kit),java标准开发包,它提供了编译、运行java程序所需的各种工具和资源,包括java编译器、java运行时环境,以及常用的java类库等。

  下图是jdk的安装目录:

  

二、jre

   jre( java runtime environment) 、java运行环境,用于解释执行java的字节码文件。普通用户而只需要安装 jre(java runtime environment)来运行 java 程序。而程序开发者必须安装jdk来编译、调试程序。

  下图是jre的安装目录:里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。

三、jvm

  jvm(java virtual mechinal),java虚拟机,是jre的一部分。它是整个java实现跨平台的最核心的部分,负责解释执行字节码文件,是可运行java字节码文件的虚拟计算机。所有平台的上的jvm向编译器提供相同的接口,而编译器只需要面向虚拟机,生成虚拟机能识别的代码,然后由虚拟机来解释执行。

  当使用java编译器编译java程序时,生成的是与平台无关的字节码,这些字节码只面向jvm。不同平台的jvm都是不同的,但它们都提供了相同的接口。jvm是java程序跨平台的关键部分,只要为不同平台实现了相应的虚拟机,编译后的java字节码就可以在该平台上运行。

四、区别与联系

  1. jdk 用于开发,jre 用于运行java程序 ;如果只是运行java程序,可以只安装jre,无序安装jdk。
  2. jdk包含jre,jdk 和 jre 中都包含 jvm。
  3. jvm 是 java 编程语言的核心并且具有平台独立性。

 

如需转载,请注明作者(冰湖一角)和链接https://www.cnblogs.com/bingyimeiling/p/10266949.html

欢迎关注微信公众号【java典籍】,收看更多java技术干货!

 ▼微信扫一扫下图↓↓↓二维码关注

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网