Java基础入门(二)——JDK、JRE与JVM

初学Java,要对JDK、JRE、JVM层次上有一个初级概念的理解,不能提起来毫无概念啊,造成靓仔语塞的车祸现场。

何为JDK、JRE、JVM

首先从英文名称上来理解一哈:

JDK(Java development Kit):Java开发工具包。JDK是整个Java开发的核心,是用于开发Java应用程序的软件开发工具。包括了Java运行时环境(JRE)、解释器(java.exe)、编译器(javac.exe)、Java归档(jar包——一种软件包文件格式)、文档生成器(javac.exe)等工具和Java基础类库

JRE(Java Runtime Environment):Java运行时环境。运行Java程序所必须的环境的集合,包括了JVM标准实现及Java基本类库。相对于JVM来说,多出来的是一部分Java类库。

JVM(Java Virtual Machine):Java虚拟机。整个Java实现跨平台的最核心部分,能够运行Java语言编写的软件程序;它只认识.class为后缀类型的文件,能够将 class 文件中的字节码指令进行识别并调用操作系统向上的 API 完成动作。

JVM有三层含义:

  • JVM规范要求
  • 满足JVM规范要求的一种具体实现(一种计算机程序)
  • 一个JVM实例,在命令提示符下编写Java命令以运行Java类时,都会创建一个JVM实例。

三者关系

一层层的嵌套关系:JDK>JRE>JVM

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

JDK = JRE + 开发工具(IDEA、Eclipe等IDE(Integrated Development Environment:集成开发环境))

JRE = JVM + 类库

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

JDK与JRE交互过程

  • JDK中的编译器(javac.exe)对代码进行编译——存储在.java文件中的源代码被编译成字节码存储在.class文件中。
  • 此过程发生在JRE中。

JVM工作方式

Java程序运行时JVM是JRE的一个实例。它执行的是.class文件,它会将字节码翻译为平台可以执行的机器码。

Java程序开发过程

  • 使用JDK(调用Java API)编写Java源代码,存储于.java文件中。
  • JDK中的编译器javac.exe将Java源代码编译成为字节码,存储在.class文件中。
  • JRE加载、验证、执行Java字节码。
  • JVM将字节码解释为机器码并映射到CPU指令集或OS(操作系统)的系统调用。

 

如果想有更深的理解,可以看看这篇博文:JDK、JRE、JVM三者间的关系

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值