這是一個關於編碼風格的問題和建議的做法:您是否將super()調用作爲構造函數的開始?
正如在回答這個問題unnecessary to put super() in constructor?解釋,如果你寫的是應該使用默認的(無參數)從構造函數的類的構造函數父類,你可以在你的構造函數的調用開始super()
:
public MyClass(int parm){
super(); // leaving this out makes no difference
// do stuff...
}
,但你也可以省略通話;在兩種情況下,編譯器都會像超級()調用那樣執行。
那麼,你是否把你的構造函數調用或不?
一方面,有人可能會爭辯說,包括super()
使事情更加明確。 OTOH,我總是不喜歡寫冗餘的代碼,所以我個人傾向於把它留下來;然而,我經常從別人的代碼中看到它。
你有什麼經驗?您是否遇到過這種或那種方法的問題?你有編碼準則,規定了一種方法?
BTW:一個相關的問題(僅供參考):
Is there a reason to explicitly code a default constructor when there are no other constructors?
我不這樣做,但可能是因爲我讀的所有代碼(以及從中學到的)都沒有。我可以簡單地延續我學到的不良風格。 – 2010-04-26 11:27:58