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实现)

相关推荐
小羊没烦恼!4 天前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
俊昭喜喜里4 天前
java中的继承和多态的区别
java
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
譕痕4 天前
JSONObject与JSONArray封装数据格式区别
java·json
胡写代码4 天前
别再前后端各写一套表单校验了
java·后端
小鱼能吃糖4 天前
缺陷修复总览 · mall电商项目:5类缺陷,1个病根,4个业务域
java·电商
此时不提桶,更待何时4 天前
01-06-A-JVM排查实战详解
java·jvm
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
vipxieliang4 天前
ValidX 在 DDD 领域驱动设计中的实践
java·spring boot
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++