📜  C#方法覆盖

📅  最后修改于: 2020-10-31 03:06:27             🧑  作者: Mango

C#方法覆盖

如果派生类定义的方法与其基类中定义的方法相同,则在C#中称为方法重写。它用于实现运行时多态。它使您能够提供该方法的特定实现,该方法已经由其基类提供。

要在C#中执行方法重写,您需要对基类方法使用virtual关键字,而对派生类方法使用override关键字。

C#方法覆盖示例

让我们看一个简单的C#方法重写示例。在此示例中,我们将在override关键字的帮助下覆盖eat()方法。

using System;
public class Animal{
    public virtual void eat(){
        Console.WriteLine("Eating...");
    }
}
public class Dog: Animal
{
    public override void eat()
    {
        Console.WriteLine("Eating bread...");
    }
}
public class TestOverriding
{
    public static void Main()
    {
        Dog d = new Dog();
        d.eat();
    }
}

输出:

Eating bread...