我明白重寫一個方法/函數在基類中的實現中重新定義了派生類中的實現。在C#for ASP.NET中重寫方法時,我應該調用基類實現嗎?
現在什麼混淆我,是,如果我在ASP.NET如CreateChildControls()
覆蓋類(我把它隨機無特殊原因),VS2008自動生成:
protected override void CreateChildControls()
{
base.CreateChildControls();
}
夠好,默認的實現只是調用基類'CreateChildControls()
。
所以,如果我想運行一些代碼,因爲我不知道該怎麼base.CreateChildControls()
,我應該這樣做:
protected override void CreateChildControls()
{
/*My Code Here*/
base.CreateChildControls();
}
,或者忽略什麼base.CreateChildControls()
乾脆就去做
protected override void CreateChildControls()
{
/*My Code Here*/
}
我真的很驚訝,你會被允許覆蓋你不知道的基類。 – Matt 2009-07-10 00:00:59