内存

内存的划分:

1. 寄存器

CPU在处理

2. 本地方法区

与所在系统相关。当线程访问本地方法时,就会进入本地方法栈。

3. 方法区

用于存储方法,存放了每个Class的结构信息,包括常量池、字段描述、方法描述等等。另外,随着类的加载,类变量存在于方法区。

4. 栈(stack)内存

存储的都是局部变量(只要是在方法中定义的都是局部变量),而且变量所属的作用域一旦结束,该变量就自动释放。

5. 堆(heap)内存

存储的是实体(对象)(new关键字创建的)。

内存_第1张图片

堆内存特点:

1. 每一个实体都有首地址值;

2. 堆内存中的每一个变量都有默认初始化值,根据类型的不同而不同。整数是0,小数0.0或0.0f,boolean false char '\u0000’

3. 当实体不再使用时,就会被垃圾自动回收机制处理。

你可能感兴趣的:(内存)