栈内存: stack
1.展示程序方法进栈出栈(方法被调用进栈,执行完出栈) 特点:先进后出
2.存放局部变量
3.里面元素: 执行完立即死亡
堆内存: heap
1.存放new出来的对象
2.堆中的数据都有一个地址值,每new一次就生成一个新的地址值
3.堆中对象内部空间都有默认值:
整型: 0 ; 浮点型 : 0.0 ; 字符型: ‘\u0000’ ; 布尔型 : false ; 所有的引用数据类型: null
方法区 :
1. 存放字节码对象 Class(类的类)的对象//.class文件
2. 常量池 : 存放常量的容器(JDK8之后迁移到了堆内存中)
寄存区: 和CPU运算,计算有关
一个数组的内存图