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 负责实际的程序执行。

相关推荐
夜郎king8 分钟前
RuoYi-Vue3 企业级后台快速落地实战指南
java·开发语言
江华森36 分钟前
exp01_Python_数据类型
开发语言·python
希冀12341 分钟前
【JavaScript】Javascript—JS进阶—Day03
开发语言·javascript·原型模式
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第156题】【06_Spring篇】第16题:Spring 用到了哪些设计模式?
java·spring·设计模式·代理模式·工厂模式
gugucoding1 小时前
28. 【C语言】通用数据操作:`void *` 与类型无关编程
c语言·开发语言
曹牧1 小时前
XML 解析过程中遇到 `org.xml.sax.SAXParseException
java·开发语言
光影少年1 小时前
RN 架构:JS层、原生桥接层、原生渲染层 通信原理
开发语言·javascript·架构
ALex_zry1 小时前
C++26 std::inplace_vector 详解:零堆分配的定容向量
开发语言·c++
许彰午2 小时前
77_Python数据清洗实战技巧
开发语言·python
落寞的电源2 小时前
Delegate = Object + MethodInfo
开发语言·数据库·c#