也许标题令人困惑。
让我给你举个例子:
public abstract class Base
{
protected abstract void DoSomething();
}
public abstract class BaseA : Base
{
protected abstract void DoSomething();
}
public class ClassA1 : BaseA
{
protected override void DoSomething()
{
// do something!
}
}
public class ClassA2 : BaseA
{
protected override void DoSomething()
{
// do something!
}
}
使用此代码,这是与我的真实项目类似的场景。我有一个基类。但我意识到基类需要再次抽象,所以方法 DoSomething 需要再次抽象,当我有具体类时我想重写它。
是一个好习惯吗?还是因为我将方法设置为抽象两次而出现问题?