java的内存分为5个部分
1.栈(Stack):存放的是方法中的局部变量。方法的运行一定要在栈当中运行。
局部变量:方法的参数,或者是方法{}中的内部变量
作用域:一旦超出作用域,立刻从栈内存当中消失。
2.堆(Heap) :凡是new出来的东西都在堆当中。
堆内存里的东西都有一个地址值:16进制
堆内存里面的数据,都有默认值,规则:
整数 默认为0
浮点数 默认为0.0
字符 默认为‘\u0000’
布尔 默认为false
引用类型 默认为null
3.方法区(Method Area):存储.class相关信息,包含方法的信息。
4.本地方法栈:与操作系统相关。
5.寄存器:与cpu相关。
先以数组为例:
public class shuzu {
public static void main(String[] args) {
int [] array = new int[3];
System.out.println(array);
System.out.println(array[0]);
System.out.println(array[1]);
System.out.println(array[2]);
array[1] = 1;
array[2] = 2;
System.out.println(array);
System.out.println(array[0]);
System.out.println(array[1]);
System.out.println(array[2]);
}
}