子類和父類的構造函數

1、 

public class A {
    public A() {
        System.out.println("A類的無參構造函數");
    }

    public A(int a) {
        System.out.println("A類的有參構造函數");
    }
}
public class B extends A {

    public B(){
        //super();//1、不寫或者寫super()都會調用父類的無參構造函數
        System.out.println("B類的構造函數");
    }
}
public class Program {

    public static void main(String[] args) {
        B b = new B();
    }
}

運行結果:

A類的無參構造函數
B類的構造函數

2、

public class A {

    public A(int a) {
        System.out.println("A類的有參構造函數");
    }
}
public class B extends A {

    public B(){
        super(1);//2.父類如果沒有無參的構造函數,必須要使用super(參數)來調用父類的構造函數
        System.out.println("B類的構造函數");
    }
}
public class Program {

    public static void main(String[] args) {
        B b = new B();
    }
}

運行結果:

A類的有參構造函數
B類的構造函數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章