2024.2.8《安卓开发三》

创建对象内存分析

1.首先先在方法区把Demo01类的游戏额代码信息放进来。

2.主方法main()会被压入栈.。

3.一旦new会在方法区加载出Student这个类。

4.当等于通过Students A= new Students();生成一个A同学放入栈中(此时的A只是一个引用或者变量名)。

5.针对于这个对象A会在堆里面,通过这个模板new了一个A。

6.此时的action()方法其实调用了方法区中的action()方法,此时Students A= new Students();方法就完成了。

7.接下来给name、age进行赋值。

8.将方法区的Demo01中的常量池中的值丢个堆中A进行name和age的赋值,此时A.name = "代码贩子、"; A.age = 24;以及A.action();中的值就赋完了,此时这个对象A的堆中就有这些值了,此时就可以使用它了。

9.如果出现了同学B就相当于当等于通过Students A= new Students();生成一个A同学放入栈中(此时的A只是一个引用或者变量名)。

10.针对于这个对象A会在堆里面,通过这个模板new了一个B。

11.此时的action()方法其实调用了方法区中的action()方法,此时Students。 B= new Students();方法就完成了,此时后面的操作相同。

 

posted @ 2024-02-06 12:10  kuku睡  阅读(15)  评论(0)    收藏  举报