// 定义一个基类 Animal
public class Animal
{
// 基类中的虚方法 MakeSound
public virtual void MakeSound()
{
Console.WriteLine("Animal makes a sound");
}
}
// 派生类 Dog 继承自 Animal
public class Dog : Animal
{
// 重写基类的 MakeSound 方法
public override void MakeSound()
{
Console.WriteLine("Dog barks");
}
}
// 测试代码
public class Program
{
public static void Main()
{
Animal myAnimal = new Animal();
Animal myDog = new Dog();
myAnimal.MakeSound(); // 输出: Animal makes a sound
myDog.MakeSound(); // 输出: Dog barks
}
}
Animal
:定义了一个虚方法 MakeSound
,使用 virtual
关键字表示该方法可以被派生类重写。Dog
:继承自 Animal
类,并使用 override
关键字重写了 MakeSound
方法。这意味着当通过 Dog
类的对象调用 MakeSound
方法时,将执行派生类中定义的新实现。Animal
类型的对象,另一个是 Dog
类型但引用为 Animal
的对象。调用它们的 MakeSound
方法时,会根据实际对象类型调用相应的方法。通过这种方式,override
关键字允许派生类提供特定于该类的行为,而不会影响其他派生类或基类的行为。
上一篇:c# treeview
下一篇:c#获取时间戳
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站