java的内存需要划分为5个部分
1. 栈(Stack) : 存放的都是方法中的局部变量。方法的运行一定要在栈当中运行。
局部变量: 方法的参数 ,或者是方法{ } 内部的变量
作用域: 一旦超出作用域 ,立刻从栈内存当中消失。
2. 堆(Heap): 凡是new 出来的东西,都在堆当中。
堆内存里面的东西都有一个地址值:16进制
堆内存里面的数据,都有默认值。规则 :
整数 : 默认为0
浮点数: 默认为:0.0
字符 :默认 ‘\u0000’
布尔 : 默认为false
引用类型: 默认为Null
3. 方法区(Method Area): 存储.class相关信息,包含方法的信息。
4. 本地方法栈(Native Method Stack): 与操作系统相关。
5. 寄存器 (pc Register) : 与CPU相关