JDK、JRE、JVM三者关系详解

java开发工具包 = java运行环境 + java开发工具

Java 运行环境 = Java虚拟机 + java核心类库

JDK是java开发工具包,包含了编写、编译、运行、调试java程序所需的所有工具和组件。它拥有JRE所拥有的一切,还有编译器和工具,能够创建和编译程序。

JRE是java的运行环境,包括了java虚拟机和java标准类库(java API),JRE是针对java应用程序的,提供了在计算机上运行java应用程序所需的最小环境。如果只是为了运行一下java程序的话,只需要安装JRE就行了,如果需要进行java编程方面的工作,那么就需要安装JDK。

JVM是java虚拟机,是java程序的运行环境,JVM的主要作用就是将java代码转换为可以在计算机上运行的机器码,并负责程序的执行。字节码和不同系统的JVM实现是java语言一次编译,到处运行的关键所在,JVM并不是只有一种,只要满足JVM规范,每个公司、组织或者个人都可以开发自己的专属JVM。(JVM规范定义了一组标准,这些标准描述了如何执行Java字节码、存储类文件格式、Java API等。遵循JVM规范,任何人都可以创建他们自己的JVM实现)

相关推荐
杨杨杨大侠2 小时前
都能接模型、RAG 和 MCP,Java Agent 框架到底差在哪?
java
破茧蝴蝶2 小时前
Python分布式爬虫完整教程
开发语言·python
狗凯之家源码网2 小时前
全新 PHP 轻量客服聊天室源码深度评测
开发语言·php·聊天室系统
远离UE42 小时前
UE5 Substrate Thin Film 源码拆析
开发语言·javascript·ue5
keyipatience2 小时前
JavaScript学习(1)书写位置,变量、数据类型、运算符
开发语言·前端·javascript·css·学习
Thinker QAQ3 小时前
并发编程(九):BlockingQueue 与 Channel——语言层的原子性、可见性与有序性
java·python·go·并发编程·channel·blockingqueue·message passing
栈帧之外3 小时前
【C++】STL之set
开发语言·c++
霸道流氓气质4 小时前
RAG 可观测性与生产监控实战:四层遥测模型、五大仪表盘与 OpenTelemetry 全链路追踪的 Java 生产级实现
java·人工智能·python
AOI小白新手上路4 小时前
autodl常用的tar 打包下载(数据集)命令手册:逐段拆解与套用模板
java·大数据·数据库
catchadmin4 小时前
免费可商用 PHP 管理后台 CatchAdmin V5.4.1 发布,新增 MCP 支持
开发语言·php