jdk,jre,jvm 三者间的差别与联系

来源:互联网 发布:qq堂mac版官方下载 编辑:程序博客网 时间:2024/05/20 15:39

           学习java有近1年半了,自以为学的挺不错。有一次笔试遇到一道题,请说说jdk,jre,jvm的区别与联系;javaSE,javaEE,javaME,j2SE,J2ME,J2EE的含义.我对这个问题回答的不完善,那次笔试成绩就因这类小问题成绩较低,因为平时认为这些东西不重要,就忽略了。

  由于那次的教训,特此把这个问题总结下。

  1.JDK是java Development ToolKit(Java开发工具包)的缩写,其中包含了java的开发工具,也包含了JRE.

   其中的开发工具:编译工具(javac.exe),打包工具(jar.exe);

  2.JRE是Java Runtime Enviromental(java运行时环境)的缩写,也就是我们说的JAVA平台,所有的Java程序都要在JRE下才能运行。包括JVMJAVA核心类库和支持文件。与JDK相比,它不包含开发工具——编译器、调试器和其它工具。

  3.JVM是Java Virtual Mechinal(JAVA虚拟机)的缩写。JVM是JRE的一部分,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM的主要工作是解释自己的指令集(即字节码)并映射到本地的CPU的指令集或OS的系统调用。Java语言是跨平台运行的,其实就是不同的操作系统,使用不同的JVM映射规则,让其与操作系统无关,完成了跨平台性JVM对上的Java源文件是不关心的,它关注的只是由源文件生成的类文件(class file)。类文件的组成包括JVM指令集,符号表以及一些补助信息。

  下图展示了三者之间的关系:

  

       javaSE,javaEE,javaME,j2SE,J2ME,J2EE的含义及联系:

  首先清楚以上几个概念都是java平台的组成部分,也就是说他们是平台,并非一种技术或语言。

  java平台包含三个组成部分,j2SE(面向桌面应用),j2EE(面向企业应用),j2ME(面向移动设备)。

J2EE(Java 2 Platform Enterprise Edition)企业版

是为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如Servlet Jsp等,主要针对于Web应用程序开发。

J2SE(Java 2 Platform Standard Edition)标准版

是为开发普通桌面和商务应用程序提供的解决方案。该技术体系是其他两者的基础,可以完成一些桌面应用程序的开发。比如Java版的扫雷。

平时所说的JDK其实就是指J2SE,这也是本教程所要讲解的。

J2ME(Java 2 Platform Micro Edition)小型版

是为开发电子消费产品和嵌入式设备提供的解决方案。该技术体系主要应用于小型电子消费类产品,如手机中的应用程序等。

注意:这里的小型电子消费品不是指搭载了IOS或Android操作系统的手机,IOS和Android系统都有自己的开发组件。

 Java5.0版本后,J2EE、J2SE、J2ME分别更名为javaEE,javaSE,javaME。

每个版本名称中都带有一个数字“2”,这个“2”是指Java2:自从 Java1.2 发布后,Java 改名为 Java2(不过我们平时仍然称为 Java)。













  

0 0
原创粉丝点击