Java虚拟机(JVM)深度解析
- JVM概述
 - JVM内存结构
 - 堆内存详细分区
 
- 类加载机制
 - 类加载流程
 - 类加载器层次
 
- 执行引擎与运行时数据区
 - 执行引擎核心组件
 - 运行时数据区交互
 
- 垃圾回收机制(GC)
 - GC算法分类
 - 常见垃圾收集器
 
- JVM性能调优
 - 常用参数示例
 
JVM概述
Java虚拟机(Java Virtual Machine, JVM)是Java程序运行的核心环境,负责将字节码(.class文件)转换为机器码并执行。
 核心特性:
-  
平台无关性:一次编译,到处运行(Write Once, Run Anywhere)。
 -  
内存管理:自动内存分配与垃圾回收。
 -  
安全沙箱:限制Java程序对底层系统的直接访问。

 
(示意图:JVM核心组件:类加载器、运行时数据区、执行引擎)
JVM内存结构
JVM内存划分为多个区域,各司其职:
| 内存区域 | 描述 | 线程共享性 | 
|---|---|---|
| 堆(Heap) | 存放对象实例和数组,GC主要工作区域。 | 共享 | 
| 方法区 | 存储类信息、常量、静态变量(JDK 8后由元空间Metaspace替代永久代)。 | 共享 | 
| 虚拟机栈 | 存储方法调用的栈帧(局部变量表、操作数栈、动态链接等)。 | 线程私有 | 
| 本地方法栈 | 为Native方法(如C/C++代码)服务。 | 线程私有 | 
| 程序计数器 | 记录当前线程执行的字节码指令地址。 | 线程私有 | 
