在 MSDN 上,我发现在抽象方法声明中使用“virtual”修饰符是错误的。 我的一位同事应该是非常有经验的开发人员,但他在他的代码中使用了这个:
public abstract class BusinessObject
{
public virtual void Render(){}
public virtual void Update(){}
}
它是否正确?
最佳答案
如果抽象类提供了一个可选点,继承类可以在其中改变行为,这就有意义了。
因此,通过这种方式继承的类将不会被迫实现它,但如果需要的话它们可以实现。
通常这个方法被抽象类调用:
public AddFoo(Foo f)
{
// ...
OnAddedFoo(f);
}
这里将 OnAddedFoo
作为 virtual
而不是 abstract
是有意义的。
关于c# - 抽象方法声明 - 虚拟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5350451/