Java 架构
发布: (2026年2月4日 GMT+8 12:33)
3 min read
原文: Dev.to
Source: Dev.to
JDK
JDK(Java 开发工具包)提供用于开发 Java 应用程序的工具和库,配合 JRE 与 JVM 使用。JRE(Java 运行时环境)提供运行 Java 程序所需的库和 JVM。JVM(Java 虚拟机)在系统上执行编译后的 Java 字节码。
Java Source Code
(.java)
│
▼
┌────────────────────────┐
│ JDK │
│ │
│ Development Tools │
│ ┌──────────────────┐ │
│ │ javac → Compile │ │
│ │ java → Run │ │
│ │ javadoc → Docs │ │
│ │ jar → Package │ │
│ └─────────┬────────┘ │
│ │ │
│ ▼ │
│ ┌────────┐ │
│ │ JRE │ │
│ │ │ │
│ │ JVM │ │
│ │ + Libs │ │
│ └────────┘ │
└────────────────────────┘
│
▼
OS / Hardware
JRE
Java 运行时环境(JRE)是 Java 程序运行所必需的软件包。JRE 包含 Java 虚拟机(JVM),后者通过解释和即时编译(JIT)相结合的方式执行 Java 字节码。JRE 主要负责运行 Java 应用程序,而部署工具主要由 Java 开发工具包(JDK)提供。
.class file (Bytecode)
│
▼
┌─────────────────────────┐
│ JRE │
│ (Java Runtime Env.) │
│ │
│ ┌───────────────┐ │
│ │ JVM │ │
│ │───────────────│ │
│ │ Execution │ │
│ │ Engine │ │
│ │ ┌─────────┐ │ │
│ │ │Interpreter│ │ │
│ │ └─────────┘ │ │
│ │ ┌─────────┐ │ │
│ │ │ JIT │ │ │
│ │ │ Compiler │ │ │
│ │ └─────────┘ │ │
│ └───────────────┘ │
│ ┌───────────────┐ │
│ │ Java Libraries│ │
│ │ (API Classes) │ │
│ └───────────────┘ │
└─────────────────────────┘
│
▼
Output
JVM
JVM 是一种虚拟机,为 Java 字节码提供执行环境。JVM 充当 Java 代码与底层硬件及操作系统之间的中间层,使 Java 程序能够在各种平台和系统上高效、可靠地运行。
Bytecode
(.class)
│
▼
┌───────────────────────┐
│ JVM │
│ │
│ ┌─────────────────┐ │
│ │ Class Loader │ │
│ └────────┬────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ Runtime Data │ │
│ │ Areas │ │
│ │ (Heap, Stack) │ │
│ └────────┬────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ Execution │ │
│ │ Engine │ │
│ │ (Interpreter + │ │
│ │ JIT + GC) │ │
│ └────────┬────────┘ │
│ │ │
│ ▼ │
│ Output │
└───────────────────────┘