我今天正在做一些代碼審查,遇到了一些開發人員編寫的舊代碼。它是這樣的內部抽象方法。爲什麼會有人擁有它們?
public abstract class BaseControl
{
internal abstract void DoSomething();
}
如果你有相同的組件內的派生類,它的工作
public class DerivedControl : BaseControl
{
internal override void DoSomething()
{
}
}
但是在不同的程序集派生的基類將使編譯時錯誤
DerivedControl does not implement inherited abstract member 'BaseControl.DoSomething()
這讓我想到了。爲什麼有人將一種方法聲明爲內部抽象?
直到你第四次在第三方庫中遇到這種居高臨下的假設時,這可能不是一個壞主意。它通常意味着大量不必要的重複。 (DevExpress,我看着你......) – jnm2 2014-07-16 17:29:05