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

表示父类对象的默认引用

如果子类要调用父类被覆盖的实例方法,可用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();

    }

}

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

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

猜你喜欢

转载自www.cnblogs.com/fanweisheng/p/11131344.html