JDK、JRE、JVM

JDK、JVM、JRE?

JDK(Java Development Kit)

  • JDK是JRE加上额外的开发工具和资源的集合,它包含了JRE的全部内容。
  • JDK中包括了编译器(如javac,用于将源代码编译成字节码)、调试器、文档生成工具、打包工具以及其他一些辅助工具。
  • JDK是Java开发者创建、编译和调试Java应用程序所必需的环境。

JRE(Java Runtime Environment)

  • JRE包含了JVM以及运行Java程序所需的类库和其它支持文件。
  • JRE是部署Java应用程序的目标环境,能够支持在没有开发工具的情况下运行Java应用程序。
  • JRE中包括标准的类库,例如java.lang、java.util、java.io等,这些都是Java程序运行时可能需要的。

JVM(Java Virtual Machine)

  • JVM是Java程序的运行时核心组件,它是一种抽象的计算模型,能够在不同的硬件和操作系统上运行相同的Java字节码(.class文件)。
  • JVM负责解释和执行字节码,提供内存管理、线程调度、异常处理、垃圾回收等机制。
  • JVM实现了Java的安全性和跨平台特性,使得Java程序"一次编写,到处运行"。
  • .java文件 -> javac编译 -> .class 文件(字节码文件) -> 放到JVM(不同版本)实现一次编译,处处运行

总结:JDK包含了JRE,而JRE包含了JVM

相关推荐
若鱼19199 分钟前
SpringBoot4.0新特性-Observability让生产环境更易于观测
java·spring
觉醒大王17 分钟前
强女思维:着急,是贪欲外显的相。
java·论文阅读·笔记·深度学习·学习·自然语言处理·学习方法
努力学编程呀(๑•ี_เ•ี๑)26 分钟前
【在 IntelliJ IDEA 中切换项目 JDK 版本】
java·开发语言·intellij-idea
码农小卡拉35 分钟前
深入解析Spring Boot文件加载顺序与加载方式
java·数据库·spring boot
向上的车轮42 分钟前
为什么.NET(C#)转 Java 开发时常常在“吐槽”Java:checked exception
java·c#·.net
Dragon Wu44 分钟前
Spring Security Oauth2.1 授权码模式实现前后端分离的方案
java·spring boot·后端·spring cloud·springboot·springcloud
跳动的梦想家h1 小时前
环境配置 + AI 提效双管齐下
java·vue.js·spring
坚持就完事了1 小时前
Java中的集合
java·开发语言
wjhx1 小时前
QT中对蓝牙权限的申请,整理一下
java·数据库·qt
YCY^v^1 小时前
JeecgBoot 项目运行指南
java·学习