我今天正在做一些代码审查,遇到了一些开发人员编写的旧代码。它是这样的内部抽象方法。为什么会有人拥有它们?
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