JDK、JRE、JVM的特点和关联

Java 的三个重要的概念是 JDK(Java Development Kit)、JRE(Java Runtime Environment)和 JVM(Java Virtual Machine)。它们之间有着密切的关联,同时又有不同的职责和特点。

  1. JDK(Java Development Kit):

    • 特点: JDK 是 Java 开发工具包,提供了 Java 开发所需的工具和库。它包括了 Java 编译器(javac)、调试器(jdb)、Java 文档生成器(javadoc)等开发工具,以及 Java 标准库和其他一些工具。
    • 关联: JDK 包含了 JRE,因此可以说 JDK 包括了 JRE。在开发 Java 应用程序时,需要安装 JDK。
  2. JRE(Java Runtime Environment):

    • 特点: JRE 是 Java 运行时环境,提供了运行 Java 应用程序所需的环境和库。它包括了 Java 虚拟机(JVM)、Java 核心类库(Java API,用于支持基本的 Java 编程)以及其他一些运行时所需的类和资源。
    • 关联: JRE 是 Java 应用程序运行的基本环境。如果只需要运行 Java 程序而不进行开发,可以安装 JRE。
  3. JVM(Java Virtual Machine):

    • 特点: JVM 是 Java 虚拟机,是 Java 程序运行的环境。它负责将 Java 源代码编译为字节码,然后在特定平台上执行这些字节码。JVM 提供了内存管理、垃圾回收、线程管理等功能,以确保 Java 程序的可移植性和性能。
    • 关联: JVM 是 JRE 的一部分。JRE 包含了 JVM 和其他运行时所需的库。当你运行一个 Java 程序时,实际上是在 JVM 上运行这个程序。

关系图示例:

关系总结:

  • JDK 包含 JRE。
  • JRE 包含 JVM。
  • JDK 包含编译器、调试器等开发工具,而 JRE 只包含运行 Java 应用程序所需的环境。

在实际开发中,如果你只是要运行 Java 程序,那么安装 JRE 就足够了。但如果你需要进行 Java 开发,包括编写和编译代码,那么你需要安装 JDK。 JRE 和 JVM 的目标是提供一个可移植、独立于平台的 Java 运行环境。 JRE 通过包含 JVM 和核心类库实现了这个目标。

相关推荐
Terio_my15 分钟前
Spring Boot 热部署配置与禁用
java·spring boot·后端
青云交1 小时前
Java 大视界 -- Java 大数据在智能安防视频监控系统中的视频语义理解与智能检索进阶
java·深度学习·监控系统·行为识别·智能安防·智能检索·视频语义理解
!chen1 小时前
如何在新的Spring Boot项目中关闭Spring Security?
java·spring·jar
Never_Satisfied1 小时前
在JavaScript / HTML中,浏览器提示 “Refused to execute inline event handler” 错误
开发语言·javascript·html
Never_Satisfied1 小时前
在JavaScript / HTML中,事件监听的捕获和冒泡阶段解析
开发语言·javascript·html
HalvmånEver1 小时前
初学者入门 C++ map 容器:从基础用法到实战案例
开发语言·c++·学习·map
我是华为OD~HR~栗栗呀1 小时前
Java面经(22届考研-华oD)
java·后端·python·华为od·华为
毕设源码-朱学姐2 小时前
【开题答辩全过程】以 python基于Hadoop的服装穿搭系统的设计与实现为例,包含答辩的问题和答案
开发语言·hadoop·python
爱砸键盘的懒洋洋2 小时前
Python第四课:数据类型与转换
开发语言·python
z晨晨2 小时前
互联网大厂Java求职面试实战:Spring Boot与微服务场景深度解析
java·spring boot·redis·微服务·kafka·spring security·电商