【Java核心】JDK、JRE、 JVM的联系与区别

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~

个人主页:.29.的博客

学习社区:进去逛一逛~

JDK、JRE、 JVM的联系与区别

  • [1. 简述](#1. 简述)
  • [2. 是什么](#2. 是什么)
  • [3. 联系和区别](#3. 联系和区别)

1. 简述

简单来说

JDK 是开发 Java 程序所需的工具包,包含了 JRE,并且额外提供了开发工具和库。JRE 是 Java 的运行时环境,包含了JVM。JVM 是运行 Java 程序的虚拟机。


2. 是什么

JDK、JRE 和 JVM 是与 Java 相关的三个重要术语,它们在 Java 开发和执行过程中扮演不同的角色,有着密切的联系:

  1. JVM(Java Virtual Machine,Java 虚拟机):JVM 是 Java 的核心组件之一,它是一个虚拟的计算机环境,负责在运行 Java 程序时解释和执行 Java 字节码。JVM 是跨平台的关键,它能够将编写的 Java 代码在不同操作系统上运行,将字节码翻译成与底层操作系统和硬件相匹配的机器码。同时,JVM 还负责内存管理、垃圾回收、线程管理等任务。
  2. JRE(Java Runtime Environment,Java 运行时环境):JRE 是 Java 应用程序的运行环境,包含了 JVM 和 Java 标准类库(Java API),它提供了 Java 程序运行所需的核心类库和支持文件。JRE 是给用户或最终用户使用的,它只包含运行 Java 程序所需的组件,不包含编译器和其他开发工具。
  3. JDK(Java Development Kit,Java 开发工具包):JDK 是用于开发 Java 应用程序的软件包,它包含了 JRE,同时还提供了编译器(javac)、调试器(jdb)、文档生成工具(javadoc)以及其他开发所需的工具和库。JDK 是给开发人员使用的,它提供了编写、编译和调试 Java 程序的一切必要组件。

3. 联系和区别

JDK、JRE、JVM三者的联系和区别

  • JDK 是用于开发 Java 程序的工具包,包括了 JRE,同时提供了编译器(javac)和其他开发工具。

  • JDK 针对开发人员和编写 Java 程序的环境,JRE 针对最终用户和运行 Java 程序的环境。

  • JDK 包含了 JRE,但是 JRE 没有包含 JDK 的开发工具部分。

  • JVM 是运行 Java 程序的虚拟机,JRE 则是包含 JVM 和 Java 标准类库的运行时环境。


相关推荐
Ray Liang44 分钟前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解1 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
SimonKing5 小时前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean5 小时前
Jackson View Extension Spring Boot Starter
java·后端
Seven976 小时前
剑指offer-79、最⻓不含重复字符的⼦字符串
java
皮皮林55116 小时前
Java性能调优黑科技!1行代码实现毫秒级耗时追踪,效率飙升300%!
java
冰_河16 小时前
QPS从300到3100:我靠一行代码让接口性能暴涨10倍,系统性能原地起飞!!
java·后端·性能优化
桦说编程19 小时前
从 ForkJoinPool 的 Compensate 看并发框架的线程补偿思想
java·后端·源码阅读
躺平大鹅21 小时前
Java面向对象入门(类与对象,新手秒懂)
java