我有下面的代碼,我試圖瞭解它做什麼:構造實現的東西
readonly Ido _do;
public Main(): this(new doX()) { }
public Main(Ido do) {
_do = do;
}
這是什麼做的第一個構造函數?
this(new doX())
和爲什麼應用程序首先由
Main(Ido do)
開始,然後調用
this(new doX())
,而我相信這應該是倒過來
我有下面的代碼,我試圖瞭解它做什麼:構造實現的東西
readonly Ido _do;
public Main(): this(new doX()) { }
public Main(Ido do) {
_do = do;
}
這是什麼做的第一個構造函數?
this(new doX())
和爲什麼應用程序首先由
Main(Ido do)
開始,然後調用
this(new doX())
,而我相信這應該是倒過來
調用默認構造通過調用new Main()
將首先執行哪個調用第二構造函數this(new doX())
。
嘗試單步執行調試器中的代碼,它應該變得清晰。
this(new dox)
被調用構造函數這是您的類的參數化構造函數。您可以使用這個關鍵字在同一對象中調用另一個構造函數。
調用該類的其他構造函數。不帶參數即 - -
: base(...) // Call a base class contructor
: this(...) // Call another constructor in the same class
默認構造函數使用默認值,即新的doX()調用重載的構造函數。 –
它與實現無關。不要搞亂「:」在這裏 – Alireza
嘗試用可讀的英文重述問題! –