Java内存分配主要包括以下几个区域:

1. 寄存器:我们在程序中无法控制

2. 栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中

3. 堆:存放用new产生的数据

4. 静态域:存放在对象中用static定义的静态成员

5. 常量池:存放常量

6. 非RAM(随机存取存储器)存储:硬盘等永久存储空间

图1:

Java内存管理

图2:

Java内存管理

图3:

Java内存管理

图4:

Java内存管理

图5:

Java内存管理

图6:

Java内存管理

图7:

Java内存管理

Java程序具体执行的过程:

Java内存管理

相关文章: