儘管子類可以整合父類所有的成員和方法,但是不能整合構造方法。
第一種情況,如果父類a中定義有public a()這樣的構造方法,那就不會出錯;如果父類a中沒有無引數構造方法,b的編譯會出錯
第二種情況,一定會出錯,因為子類b中並沒有b(引數1,引數2,引數3)這樣的構造方法,構造方法是不可以繼承的。
對於父類的構造方法,子類只可以在自己的構造方法中呼叫,而不能繼承。有下面2種方法呼叫父類的構造方法:
1.在子類的構造方法中使用super關鍵字;
2.如果子類的構造方法沒有super或者this呼叫,編譯器會插入乙個對父類無參構造方法(預設構造方法)的隱含呼叫super();需要注意的是:如果父類定義了構造方法,但是沒有提供無引數的構造方法,子類的編譯將產生錯誤。
Java構造方法的繼承呼叫
1.對於父類含有引數建構函式的方法,子類可以通過在自己構造方法中使用super關鍵字來呼叫,但是super必須是第乙個可執行語句 2.父類無參建構函式一定被呼叫 class father public father int x public void sub 1 public class son e...
java 繼承中的構造方法
1 子類構造方法必須先呼叫其基類構造方法。2 子類可以在構造方法中用super argument list 來呼叫基類的構造方法。使用this argument list 來呼叫本類的另外構造方法。如果使用super 來呼叫基類,必須寫在子類構造方法的第一行。3 如果子類中沒有顯示的呼叫基類的構造方...
java繼承中的構造方法
注 子類的構造過程中必須呼叫其基類的構造方法。如果子類的構造方法中沒有顯式地呼叫基類的構造方法,則系統預設呼叫基類的無引數構造方法。如果子類構造方法中既沒有顯式呼叫基類構造方法,而基類又沒有無引數的構造方法,則編譯出錯。子類可以在自己的構造方法中使用super argument list 呼叫基類的...