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 和核心类库实现了这个目标。

相关推荐
金銀銅鐵8 小时前
带您看懂字节码指令(二):空循环里有什么
java·后端·ai编程
§ꦿCFོ༉9 小时前
嵌入式八股文—C语言入门学习(四)
c语言·开发语言·学习
投图匠9 小时前
十种不同风格的 CTP接口 框架
开发语言·python
吴名氏.10 小时前
Java转AI Agent教程(第十三周)混合检索与重排
java·数据库·人工智能·ai·ai agent
.痞老板.11 小时前
java ee--多线程(进阶)
java·java-ee
深入云栈12 小时前
Netty 4.2.x 源码深度解析 (二十三):ByteBuf 核心设计 —— 索引、类型与零拷贝
java·后端·架构
爱笑的k1113 小时前
nano-vllm 源码剖析:千行 Python 手写离线推理引擎的调度、显存与并行时序
开发语言·python·vllm
wang_shu_mo_ran13 小时前
MyBatis 从入门到进阶(一)
java·spring·mybatis
X1A0RAN14 小时前
PPT 图片批量处理教程:导出全部幻灯片 · 提取全部素材
开发语言·javascript·powerpoint
量化分析码农15 小时前
股票历史数据的复权参数对照:多级别返回的字段与数值差异
java·javascript·后端