单个对象内存图
(看下面)
多个对象内存图
多个对象可以共用 同一个成员方法
( 每个成员变量的值是有不同的)
main方法加载到栈内存然后创建第一个对象 ,此时main方法中就会出现s1 ;
new Student就会在堆内存出现,name和age 默认值分别为null和0;
地址值为001, s1通过001就指向了堆内存那块地址,接着执行就修改了name和age 的默认值;
接着 调用成员方法;调用方法;study进入到栈内存;
输出“好好学习” 执行结束 study方法从栈内存消失;同理;s1调用doHomework方法;
创建第二个对象s2,Student在堆内存出现;
接着调用study方法,此时通过s2调用(调用者为s2);调用完从控制台消失; 同理调用doHomework方法;
main方法执行结束后 从栈内存消失