super关键字
super
关键字是一个引用,它指向当前对象的直接父类。使用 super
关键字可以访问父类中定义的成员,包括属性、方法和构造函数。
- 访问父类的属性:如果子类重写了父类的方法,并且需要在子类方法中使用父类的方法实现,可以使用
super
来引用父类的方法。 - 调用父类的方法:当子类需要扩展父类的方法时,可以使用
super
来调用父类中相应的方法。 - 调用父类的构造函数:在子类的构造函数中,可以使用
super()
来调用父类的构造函数。这通常在子类构造函数的第一行进行,以确保在子类对象的初始化过程中,父类的状态也被正确初始化。 - 访问父类的静态成员:虽然
super
通常用于访问实例成员,但它也可以用于访问父类的静态成员。但是,通常直接使用类名来访问静态成员。 - 在多态上下文中:当通过父类引用调用子类对象的方法时,
super
关键字在子类的方法中仍然指向父类,而不是子类。
以下是使用 super
关键字的一些示例:
class Parent {
void show() {
System.out.println("Parent's show()");
}
}
class Child extends Parent {
void show() {
super.show(); // 调用父类的 show() 方法
System.out.println("Child's show()");
}
}
public class TestSuper {
public static void main(String[] args) {
Child c = new Child();
c.show(); // 输出 Parent's show() 然后输出 Child's show()
}
}
标签:show,子类,关键字,父类,super,构造函数
From: https://www.cnblogs.com/jmy3/p/18349699