JAVA 那些事 – 聊聊那些易混淆的概念
本篇博文,跟大家一起回顾下JAVA那些易混淆的概念,包括 JVM/JRE/JDK,openJDK/oracleJDK,以及 JAVA SE/JAVA EE/Jakarta EE。
1 JVM/JRE/JDK
JVM,Java Virtual Machine,即 JAVA 虚拟机,是负责执行 JAVA 程序的。JVM 首先解释 JAVA 编译器编译获得的 bytecode 字节码,然后将类相关信息存储在内存中,最后执行 bytecode 字节码。JVM 有自己的 instruction set 指令集, 并在运行时管理各种内存区域。JVM 包含以下组件:
JRE, Java Runtime Environment,即 JAVA 运行时环境,是一系列运行 JAVA 应用程序所需的软件组件。JRE 包含以下核心组件:
JDK, Java Development Kit,即 JAVA 开发工具包,提供了开发/编译/调试/执行 JAVA 应用程序的环境和工具。JDK 包含以下核心组件:
从上文可以看出,三者之间的关系是:
JDK8
JDK11
2 常见的各种 JDK builds – openJDK, oracle JDK,Azul Zulu…
image
image
所以概括起来:
3 JAVA SE, JAVA EE,与 Jakarta EE3.1 JAVA SE
JAVA SE,即 Java Standard Edition, 早期版本称为 J2SE:
3.2 Java EE
Java EE,即 Java Enterprise Edition, 早期版本称为 J2EE:
3.3 Jakarta EE
Jakarta EE,即 Java Enterprise Edition, 早期版本称为 J2EE:
image
image
可以探讨任何IT技术话题和工作上的问题,一起学习共同进步!