java super关键字和调用父类构造方法

时间:2021-09-30 16:45:46

表示父类对象的默认引用

如果子类要调用父类被覆盖的实例方法,可用super作为调用者调用父类被覆盖的实例方法。

使用super调用父类方法

使用super调用父类的构造方法

调用构造方法

本类中调用另一个重载构造方法用this(参数列表)

子类构造方法调用父类构造方法用super(参数列表)

子类调用父类的构造方法时:

super必须放在第一句

Java在执行子类的构造方法前会先调用父类无参的构造方法,其目的是为了对继承自父类的成员做初始化操作。

子类在创建对象的时候,默认调用父类的无参构造方法,要是子类构造方法中显示指定调用父类其他构造方法,就调用指定的父类构造方法,取消调用父类无参构造方法。

Eg:

package reviewDemo;

class A{

String name;

A(){

System.out.println("父类默认隐式的构造方法!");

}

A(String name){

System.out.println("父类显式的构造方法!");

}

}

class B extends A{

B(){

super(null);

System.out.println("子类默认隐式的构造方法!");

}

}

public class Demo10 {

public static void main(String[] args) {

new B();

}

}

结果:父类显式的构造方法!

子类默认隐式的构造方法!