在覆盖版本的虚拟方法中添加额外的实现

时间:2017-06-28 17:11:14

标签: c# override virtual

virtual void MyMethod()
{
    DoOneThing();
}

我想在这里实施DoAnotherThing()DoOneThing() -

override void MyMethod()
{
    //DoOneThing() also.
    DoAnotherThing();
}

有可能吗?

1 个答案:

答案 0 :(得分:1)

这里的小例子

abstract class Foo
{
    public virtual void MyMethod()
    {
        Console.WriteLine("DoOneThing");
    }
}

class MegaFoo : Foo
{
    public override void MyMethod()
    {
        base.MyMethod(); // call Foo.MyMethod
        Console.WriteLine("DoAnotherThing");
    }
}