当前位置: 首页 > article >正文

JDK,JRE,JVM之间的区别和联系

JDK,JRE,JVM之间的区别和联系

  • JDK(Java SE Development Kit),Java标准开发包,它提供了编译、运行Java程序所需的各种工具和资源,包括Java编译器、Java运行时环境,以及常用的Java类库等。
  • JRE( Java Runtime Enwironment) , Java运行环境,用于运行Java的字节码文件。JRE中包括了JVM以及JMM工作所需要的类库,普通用户而只需要安装JRE来运行Java程序,而程序开发者必须安装JDK来编译、调试程序。
  • JVM(Java Virtual Machine),Java虚拟机,是JRE的一部分,它是整个java实现跨平台的最核心的部分,负责运行字节码文件。

我们写Java代码,用txt就可以写,但是写出来的Java代码,想要运行,需要先编译成字节码,那就需要编译器,而JDK中就包含了编译器javac,编译之后的字节码,想要运行,就需要一个可以执行字节码的程序,这个程序就是JVM (Java虚拟机),专门用来执行Java字节码的。


如果我们要开发Java程序,那就需要JDK,因为要编译Java源文件。


如果我们只想运行已经编译好的Java字节码文件,也就是*.class文件,那么就只需要JRE。JDK中包含了JRE,JRE中包含了JVM。


另外,JVM在执行Java字节码时,需要把字节码解释为机器指令,而不同操作系统的机器指令是有可能不一样的,所以就导致不同操作系统上的JM是不一样的,所以我们在安装JDK时需要选择操作系统。


另外,JVM是用来执行Java字节码的,所以凡是某个代码编译之后是Java宁节码,那就都能在JWM上运行,比如Apache Groovy, Scala and Kotlin等等。

简而言之,JVM提供了一个运行Java程序的虚拟环境,JRE包含了运行Java程序所需的一切,而JDK不仅包含了JRE,还提供了用于Java开发的工具。在实际开发中,如果你只需要运行Java程序,使用JRE就足够了;如果你需要进行Java开发,那么你需要安装JDK。 


http://www.kler.cn/a/131711.html

相关文章:

  • 2023.11.17 -hivesql调优,数据压缩,数据存储
  • 腾讯云4核8G服务器配置价格表,轻量和CVM标准型S5实例
  • mysqldump常用操作示例/命令
  • Go fsnotify简介
  • 【EI会议征稿】第七届大数据与应用统计国际学术研讨会(ISBDAS 2024)
  • vue实现调用手机拍照、录像功能
  • Android13 adb 无法连接?
  • 【UI】饿了么 el-upload如何上传到不同的路径, 根据不同情况上传指不同的接口,不同的路径
  • 『GitHub项目圈选02』一款可实现视频自动翻译配音为其他语言的开源项目
  • Java中for、foreach、stream区别和性能比较
  • 图论15-有向图-环检测+度数+欧拉回路
  • Linux shell 中变量 $#,$@,$0,$1,$2,$*,$$,$? 的含义
  • 吴恩达《机器学习》8-7:多元分类
  • 使用 com.jacob.activeX 库实现 Word 到 PDF
  • 交换机聚合配置 (H3C)
  • Ubuntu/Debian Hat 系 Linux 使用
  • 解决:Android TextView 设置斜体后右侧文字被遮挡
  • php-cli
  • YOLO改进系列之注意力机制(EffectiveSE模型介绍)
  • 组合式API_侦听器