详细解释与关系图解
-
JVM (Java虚拟机):
-
角色: Java程序的执行引擎。
-
核心任务:
-
加载: 读取
.class
字节码文件。 -
验证: 确保字节码安全、符合规范。
-
解释/编译: 将字节码逐条解释执行,或通过即时编译器(JIT)编译成本地机器码加速执行。
-
执行: 运行编译后的代码。
-
内存管理: 自动进行垃圾回收(GC),管理堆、栈等内存区域。
-
-
关键点: JVM是平台相关的。不同操作系统(Windows、Linux、macOS)需要对应版本的JVM。正是JVM实现了Java"一次编写,到处运行"的核心特性。
-
-
JRE (Java运行时环境):
-
角色: 为已编译 的Java程序提供运行环境。
-
包含:
-
JVM: 用于执行程序。
-
Java核心类库: 庞大的预编译代码库(如
java.lang
,java.io
,java.net
,java.util
,java.math
等),提供字符串处理、文件操作、网络通信、数据结构等基础功能。这些库被打包在rt.jar
等文件中。
-
-
使用者: 如果你的电脑只需要运行Java应用程序(如Eclipse IDE、Minecraft游戏、某些桌面软件),安装JRE就足够了。
-
-
JDK (Java开发工具包):
-
角色: 为Java开发者 提供完整的开发环境。
-
包含:
-
JRE: 所以JDK包含了运行Java程序所需的一切。
-
开发工具:
-
javac
:Java编译器,将.java
源代码文件编译成.class
字节码文件。 -
java
:Java应用程序启动器(实际调用JVM)。 -
javadoc
:根据源代码注释生成API文档。 -
jdb
:Java调试器。 -
jar
:用于创建和管理JAR(Java归档)文件的工具。 -
jconsole
:监控和管理Java应用程序。 -
javap
:反编译器。 -
...以及其他实用工具。
-
-
-
使用者: 你需要编写、编译、调试Java程序时,必须安装JDK。
-
🧩 三者关系图解
