Java程序在运行时,需要在内存中的分配空间。为了提高运算效率,有对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。
1. 栈内存
用于存储局部变量,当数据使用完,所占空间会自动释放。
2. 堆内存
数组和对象,通过new建立的实例都存放在堆内存中。
每一个实体都有内存地址值
实体中的变量都有默认初始化值
实体不在被使用,会在不确定的时间内被垃圾回收器回收
3. 方法区,本地方法区,寄存器
4.五片区域:
寄存器,栈内存,堆内存,方法区,本地方法区。
栈内存:存储的都是局部变量,一旦使用完,立刻被释放。
堆内存:存储的是实体(对象)。
1,堆内存中的每一个实体都有自己的内存地址值。
2,堆内存中每一个变量都有默认初始化值,不同类型初始化值不同。
int 0,double 0.0 char \u0000,boolean false.
3,当实体被视为垃圾时,会在不定时的时间内,被垃圾回收。
时间: 2024-12-14 18:10:49