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

相关推荐
夜月蓝汐2 分钟前
JAVA高级第六章 输入和输出处理(一)
java·开发语言
心之语歌4 分钟前
Spring AI 聊天记忆
java·后端
求知摆渡12 分钟前
Spring Boot + MyBatis-Plus 实战中的那些“坑”与思考 —— 以身份认证服务为例
java·spring boot·postgresql
Java技术小馆17 分钟前
2025年开发者必备的AI效率工具
java·后端·面试
Lemon程序馆19 分钟前
基于 AQS 快速实现可重入锁
java·后端
玩代码20 分钟前
命令设计模式
java·命令模式·java设计模式
ilifee31 分钟前
Sentinel dashboard 添加context-path后无法信息无法上传问题
java
C182981825751 小时前
Rabbitmq Direct Exchange(直连交换机)可以保证消费不被重复消费吗,可以多个消费者,但是需要保证同一个消息,不会被投递给多个消费者
java·rabbitmq·java-rabbitmq
超级无敌永恒暴龙战士2 小时前
Java-Lambda表达式
java·lambda
鱼见千寻2 小时前
Flowable31动态表单-----------------------终章
java·数据库·spring boot·flowable