1. 类加载器:
- 负责从文件系统或网络中读取字节码并将其加载到内存中。
- 例如:java.lang.ClassLoader
2. 执行引擎:
- 负责执行字节码指令,并管理线程和执行堆栈。
- 例如:java.lang.Thread
3. 内存管理:
- 负责管理 Java 对象在堆中的分配、垃圾回收和释放。
- 例如:java.lang.Object, java.lang.ref.Reference
4. 本地接口:
- 允许 Java 代码与操作系统及其本机库进行交互。
- 例如:java.nio.ByteBuffer, java.awt.Graphics2D
5. Java 虚拟机工具接口 (JVMTI):
- 提供一种机制,使外部工具可以连接到 JVM 并对其进行监视和控制。
- 例如:用于诊断和性能分析的工具
6. Java Native Interface (JNI):
- 提供一种机制,使 Java 代码可以调用本机代码,反之亦然。
- 例如:用于与 C/C++ 库交互
7. 动态即时编译器 (JIT):
- 将字节码即时编译为机器代码,以提高性能。
- 例如:HotSpot JIT 编译器
上一篇:java虚拟机指的是什么
下一篇:java虚拟机的基本结构