一、了解java内存结构
Java 内存的结构分析
1) 栈: 一般存放基本数据类型(局部变量)
2) 堆: 存放对象(Person person , 数组等)
3) 方法区:常量池(常量,比如字符串), 类加载信息
二、代码分析
1) 先在方法区加载 Person 类信息(属性和方法信息, 只会加载一次)
2) 在堆中分配空间, 进行默认初始化(初始化规则与数组一致)
3) 把地址赋给 p 1, p1 就指向对象
4)p2拷贝的是p1的地址,所以p1,p2指向的是同一块地址(改动p1,p2同时产生变化)
三、画图分析