super在建構函式中的運用

2021-09-24 22:43:42 字數 840 閱讀 9953

package example;

//在子類構造物件時,訪問子類建構函式時候,父類也執行。

//原因是:在子類的建構函式中第一行有乙個預設的隱式語句super();

/*建構函式不能覆蓋

子類的例項化過程:子類中所有的建構函式預設都不能訪問父類中空引數的建構函式。

通過super();來呼叫。

為什麼子類例項化的時候要訪問父類中的建構函式呢?

是因為子類繼承了父類,獲取到了父類中的內容(屬性),所以在使用父類內容之前,

要先看父類是如何對自己的內容進行初始化的。

所以子類在構造物件時,必須訪問父類中的建構函式。

為了完成這個必須的動作,就在子類的建構函式中加入了super();語句。

如果父類中沒有定義空引數建構函式,那麼子類的建構函式必須用super明確要呼叫

父類中的哪個建構函式。

注意:super();語句必須要定義在子類建構函式的第一行。因為父類的初始化動作

要先完成。

*/class fu

}class zi extends fu

}public class extendsdemo

}class fu

fu(int x)

}class zi extends fu

zi(int x)

}public class extendsdemo

}class fu

fu(int x)

}class zi extends fu

zi(int x)

}public class extendsdemo }

如果你覺得本人的文章對你有所幫助,客官慢走賞瓶水喝

構造方法中的this和super

自己第一次看完se的時候還不是很了解,這些什麼this,super,但是現在要開始找實習工作了,自己打算就把se,框架等在看一遍,也把自己看的一些整理出來 this 當前類的物件的引用 那有那些應用呢?1.區分成員變數和區域性變數 這段 我相信很多人都寫過,在setname 方法中有乙個和成員變數重...

建構函式的this和super的呼叫

建構函式的this和super的呼叫 class a a a int i class b extends a b int i 1 輸出結果 啥也沒輸出 2 輸出結果 a b 3 輸出結果 a aa bb this和super的區別 兩者的呼叫很相似,區別在於 super呼叫的是其父類的構造方法,th...

super呼叫超類建構函式

一 super呼叫超類建構函式 super parameter list parameter list指定超類中建構函式所需的任何形參,super 必須是在子類建構函式中執行的第乙個語句。超類定義的任何形式的建構函式都可以被super 呼叫,被執行的建構函式就是與實參相匹配的那乙個。當存在多重繼承時...