如何有一个默认的方法,但仍然能够覆盖它?

这个问题在这里已经有了答案:

  • 抽象函数和虚函数之间有什么区别? 21个答案

  • 您需要声明基本virtual (这意味着可以在必要时override它),并在需要与原始行为不同的行为时override它。 未覆盖派生类的行为与基类相同。

    public class Parent()
    {
        public virtual DataTable FetchScore()
        {
            // blahblah
        }
    }
    
    public class ChildNormal() : Parent
    {
    }
    
    public class ChildOdd() : Parent
    {
        public override DataTable FetchScore()
        {
            DataTable dt = base.FetchScore();
            // blahblah
        }
    }
    
    链接地址: http://www.djcxy.com/p/38115.html

    上一篇: How to have a default method while still be able to override it?

    下一篇: What is a difference between abstract and virtual?