每次當用new關鍵字創建出一個子類對象時,那麼程序會先執行父類中不帶參數的構造函數,然後再執行子類的構造函數.
eg: 我建了三個類,一個是父類(A_constructor) , 第二個是子類(B_constructor) , 第三個是測試用的類(Test_constructor) . 代碼及運行結果如下
父類:
public class A_constructor {
public A_constructor(){
System.out.println("父類的無參數的構造函數A_constructor()");
}
public A_constructor(int n){
System.out.println("父類帶參數的構造函數A_constructor(n) : "+n);
}
}
子類:
public class B_constructor extends A_constructor{
public B_constructor(){
System.out.println("子類的無參數構造函數B_constructor()");
}
public B_constructor(int n){
System.out.println("子類帶參數的構造函數B_constructor(n): "+n);
} }
測試類:
public class Test_constructor {
public static void main(String args[]){
B_constructor one = new B_constructor(); //不帶參數
B_constructor two = new B_constructor(2); //帶了參數
System.out.println("測試結束");
}
}
運行結果:
父類的無參數的構造函數A_constructor()
子類的無參數構造函數B_constructor()
父類的無參數的構造函數A_constructor()
子類帶參數的構造函數B_constructor(n): 2
測試結束