1、可理解为:父类的XXX。
2、可以用来调用父类的:属性、方法、构造器。
3、super的使用:
- 可以在子类的方法或构造器中,通过使用super.属性或super.方法的方式,显式的调用父类中声明的属性或方法。但通常情况下,可以省略“super.”。
- 特殊情况:当子类和父类中定义了同名的属性时,想要在子类中调用父类中声明的属性,则必须显式的使用super.属性的方式,表明调用的是父类中声明的属性。
- 特殊情况:当子类重写了父类中的方法以后,想在子类的方法中调用父类中被重写的方法时,则必须显式的使用super.方法的方式,表明调用的是父类中被重写的方法。
4、调用构造器:
- 我们可以在子类的构造器中显式的使用super(形参列表)的方式,调用父类中声明的指定的构造器。
- super(形参列表)的使用,必须声明在子类构造器的首行。
- 在类的构造器中,针对于this(形参列表)或super(形参列表)只能二选一,不能同时出现。
- 在构造器的首行,没显式的声明this(形参列表)或super(形参列表),则默认调用的是父类中空参的构造器,super();
- 在类的多个构造器中,至少一个类的构造器中使用了super(形参列表),调用父类中的构造器。