this和super的内存状态【继承关系中构造方法的调用过程】
如图所示:
我们调用Student类的构造方法时候的执行过程
- 调用Object类的构造方法,创建Object对象
- 给Person类的属性分配空间并且赋初始值(0,0.0,false,null),给this分配空间 ,给super分配空间
- 给Person的属性赋缺省值
- 调用Person类的构造方法,给属性重新赋值
- 给Student类的属性分配空间并且赋初始值(0,0.0,false,null),给this分配空间,给super分配空间
- 给Student的属性赋缺省值
- 调用Student类的初始化块
- 调用Student的构造方法,给属性重新赋值