jdk,jre,jvm三者间有何关系?

如题所述

JVM:Java虚拟机,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行。

JRE:Java运行环境,光有JVM还不能让class文件执行,因为在解释class的时候JVM需要调用解释所需要的类库lib。

JDK:Java开发工具包

JDK,JRE,JVM三者关系概括如下:

JDK是JAVA程序开发时用的开发工具包,其内部也有Java运行环境JRE。JRE是Java程序运行时需要的运行环境,就是说如果你光是运行Java程序而不是去搞开发的话,只安装JRE就能运行已经存在的Java程序了。JDk、JRE内部都包含JAVA虚拟机JVM,JAVA虚拟机内部包含许多应用程序的类的解释器和类加载器等等。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-12-25

JVM 是 Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

Java虚拟机是二进制字节码的运行环境,负责装载字节码到其内部,解释/编译为对应平台的机器指令执行。每一条Java指令,Java虚拟机规范中都有详细定义,如怎么取操作数,怎么处理操作数,处理结果放在哪里。

特点

    一次编译,到处运次(跨平台)

    自动内存管理

    自动垃圾回收功能

    字节码

    我们平时所说的java字节码,指的是用java语言编写的字节码,准确的说任何能在jvm平台上执行的字节码格式都是一样的,所以应该统称为jvm字节码。

    不同的编译器可以编译出相同的字节码文件,字节码文件也可以在不同的jvm上运行。

    Java虚拟机与Java语言没有必然的联系,它只与特定的二进制文件格式——Class文件格式关联,Class文件中包含了Java虚拟机指令集(或者称为字节码、Bytecodes)和符号集,还有一些其他辅助信息。

想要了解更多建议去B站尚学堂观看教学免费视频

本回答被网友采纳
第2个回答  2020-12-30

针对Java语言的初学者,详细介绍初学者对于Java的JDK、JRE、JVM之间的关系,帮助初学者能够理清楚它们各自的作用和应用范围。

第3个回答  2020-10-12
JDK是Java语言的软件开发工具包,JDK是整个java开发的核心,它包含了JAVA代码的编译和运行环境(JVM+Java系统类库)和JAVA工具。jdk既可以编译Java代码,也可以运行Java系统。
JRE是Java运行环境(Java Runtime Environment,简称JRE),JRE可以让计算机系统运行Java应用程序(Java Application)。也就是说jre只能运行Java系统,不能编译Java代码
JRE的内部有一个Java虚拟机(Java Virtual Machine,JVM)以及一些标准的类别函数库(Class Library)。

JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一个软件平台。通过再不同的操作系统安装Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网