this与super
Posted lhztech
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了this与super相关的知识,希望对你有一定的参考价值。
this:
代表当前对象的引用,谁来调用我,我就代表谁
super:
代表当前对象父类的引用
this 和 super 的使用区别:
a:调用成员变量
this.成员变量 调用本类的成员变量,也可以调用父类的成员变量(如果子类没有父类的某 XX 成员变量,则 this.XX 成员变量是调用父类,若子类有,则 this.XX 成员变量调用的是子类的成员变量,就近原则)super.成员变量 调用父类的成员变量
b:调用构造方法
this(...) 调用本类的构造方法
super(...) 调用父类的构造方法
c:调用成员方法
this.成员方法 调用本类的成员方法,也可以调用父类的方法(就近原则)
super.成员方法 调用父类的成员方法
相关问题:子类中所有的构造方法默认都会访问父类中空参数的构造方法,为什么呢?
因为子类会继承父类中的数据,可能还会使用父类的数据。所以,子类初始化之前,一定要先完成父类数据的初始化。其实:每一个构造方法的第一条语句默认都是:super() ,这个 super 在拥有父类的类的构造方法中是隐藏的。 Object 类最顶层的父类,需要从最顶层的 Object 类开始,往下一一层的执行构造方法。
以上是关于this与super的主要内容,如果未能解决你的问题,请参考以下文章