Java-对象内存图
序言
栈:一般存放基本数据类型
堆:存放对象(Cat cat ,数组等)
方法区:常量池(常量,比如字符串),类加载信息
一、单个对象内存图
1.成员变量

2.成员方法

二、多个对象内存图
1.内存指向

2.成员变量

3.成员方法
- 调用完成,从栈内存消失

4.结论
方法可以共用,成员变量各用各的
三、多个对象指向相同内存图
1.成员变量

2.结论
- 指向的是同一个堆内存地址
四、总结
1.先加载Person类信息:属性与方法
2.在堆中分配空间
3.进行默认初始化,再显示初始化(int age = 90),最后执行构造方法初始化
4.把堆中的地址赋给p,p就指向对象--p是对象的引用,或者叫对象名
5.当执行到方法时,就会开辟独立的空间(栈)
6.方法执行完毕/执行到return就会返回到调用方法的地方
7.继续执行后续代码
8.当main方法(栈)执行完毕,程序退出


浙公网安备 33010602011771号