Java当中JDK、JRE、JVM的关系与区别

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

JDK(Java Development Kit)是Java的开发工具包,主要运用在Java开发中,其中分为三个版本。
——SE(JavaSE),standard edition,标准版,是我们通常用的一个版本,即Java SE,多使用在开发个人、小型的Java程序。
——EE(JavaEE),enterprise edition,企业版,使用这种JDK开发J2EE应用程序,即为Java EE,多使用在企业级的Java程序开发上。从2018年2月26日开始,J2EE改名为Jakarta EE;
——ME(J2ME),micro edition,主要用于移动设备、嵌入式设备上的java应用程序,即Java ME,多使用在开发手机端的Java程序。

如果没有安装JDK开发工具包的话,是无法进行编译Java源文件的,可以理解为每个Java工程师都必须要安装JDK否则无法进行Java程序的开发;同时JDK里面包含JRE。
在这里插入图片描述
JRE(Java Runtime Environment),指Java运行环境,是Sun公司开发的产品。是运行Java程序所必须的环境的集合,并且包含JVM标准实现及Java核心类库。
——JRE是Java程序的必要运行环境,如果没有安装JRE的话是无法运行Java程序的。
——JRE里面包含JVM,但不包含JDK开发工具包,所以只安装JRE是无法对Java程序进行编辑与开发的。
——如果只是运行与测试Java程序,只需要下载安装JRE即可。

没有安装JRE是无法运行Java程序的,所以如果不是开发人员只需要下载JRE即可,但不能对Java源文件进行修改与编译。

JVM(Java Virtual Machine)是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
——Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。
——Java虚拟机本质是一个程序,当它在命令行上启动的时候,就开始执行保存在某字节码文件中的指令。
——Java语言的可移植性正是建立在Java虚拟机的基础上。
——任何平台只要装该平台版本JVM,字节码文件(.class)就可以在该平台上运行。这就是“一次编译,多次运行”。

JVM其实是一个程序,主要用来解释字节码文件成二进制;JVM是直接运行在操作系统上的,而Java程序是运行在JVM上的,所以只要有安装相对应系统版本的JVM即可运行实现Java的“一次编译,多次运行”;其中,JVM不包含JRE与JDK,但JRE包含JVM。

结论:

1、JDK是个开发工具包用来开发Java程序,并且里面包含着JRE,所以完成对Java源文件的编写后即可立刻进行编译与运行测试,并进行相对应的修改,即Java开发人员所需要安装的工具;
2、JRE是Java程序的运行环境包,里面包含了JVM的实现标准与Java的核心类库,并且里面包含着JVM,即只使用Java程序或者测试人员所需要安装的工具;
3、JVM是Java的虚拟机,本质上是一个程序,运行在操作系统上,并主要是解释字节码文件,Java实现跨平台特性是建立在JVM之上的;并且JVM被包含于JRE当中,所以一般只要下载相对应版本的JRE即可运行Java程序。

即:JDK>JRE>JVM

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值