JDK、JRE、JVM的区别

JDK (Java Development Kit)、JRE (Java Runtime Environment)和 JVM(Java Virtual Machine)是 Java 开发和运行环境的三个重要组成部分。

  • JDK 是 Java 开发工具包,它包含了编译器(javac)、调试器(jdb)以及其他用于开发和调试 Java 程序的工具。JDK 是开发人员在开发 Java 应用程序时所需的基本工具。
  • JRE 是 Java 运行环境,它包含了用于执行 Java 程序的运行时库(Java API)以及 Java 虚拟机(JVM)。JRE 只用于运行 Java 应用程序,而不包含开发工具。
  • JVM 是 Java 虚拟机,它是一种能够执行 Java 字节码的虚拟机。JVM 是将 Java 代码翻译成机器码并在计算机上执行的关键组件。它负责加载字节码,执行字节码并进行垃圾回收等任务。JVM 是 Java 跨平台特性的基础,它使得 Java 程序能够在不同的操作系统和硬件上运行。

简单来说,JDK 包含了开发和调试 Java 程序所需的工具,JRE 是用于运行 Java 程序的环境,而 JVM 负责实际的程序执行。

相关推荐
何中应5 小时前
使用jvisualvm提示“内存不足”
java·jvm·后端
何中应5 小时前
如何手动生成一个JVM内存溢出文件
java·jvm·后端
小灵吖5 小时前
LangChain4j Tool(Function Call)
java·后端
Lxinccode5 小时前
AI编程(3) / claude code[3] : 更新apiKey
java·数据库·ai编程·claude code
tod1135 小时前
C++核心知识点全解析(二)
开发语言·c++·面试经验
小灵吖5 小时前
LangChain4j Prompt 提示词工程
java·后端
weixin_440401696 小时前
Python数据分析(空值、重复值检测删除与设置)
开发语言·python·数据分析
消失的旧时光-19436 小时前
C++ 多线程与并发系统取向(五)—— std::atomic:原子操作与状态一致性(类比 Java Atomic)
开发语言·jvm·c++·并发
资深web全栈开发6 小时前
CoI - 组合优于继承:解耦的艺术
android·java·开发语言
低频电磁之道6 小时前
C++中预定义宏
开发语言·c++