super and this
super
注意点:
- super调用父类的构造方法,必须在构造方法的第一个
- 默认在子类构造方法中隐式存在一个super,来调用父类无参构造方法。
- 如果父类没有无参构造,只有有参构造,那么子类要调用父类构造方法就必须创建有参构造方法。
- super 只能出现在子类的方法或者构造方法中!
- super和this不能同时调用构造方法!
Vs this
代表的对象不同:
this:调用者本身,即对象本身
super:代表父类对象的引用
前提:
this:没有继承也可以使用
super:只能在继承条件下才可以使用
构造方法:
this();本类的构造
super();父类的构造
this的使用
- 本类中的一个方法,该方法内部需要使用该类某个属性(成员),则可以:this.成员名,来调用该成员。
- 某方法调用本类中的另一个方法,this.方法名(),不过很少用,因为可以不用写this.
- 如果子类继承父类方法而没有重写方法,那么子类对象调用这个方法的时候使用了this的话,该this是指的父类。