在C#中,多态是通过继承和接口实现的。要实现多态,首先需要创建一个基类或接口,并在派生类中重写基类或接口的方法。然后可以使用基类或接口的类型去实例化派生类对象,并调用重写的方法,这样就可以实现多态。
下面是一个示例代码:
using System; // 基类 class Animal { public virtual void MakeSound() { Console.WriteLine("Animal makes a sound"); } } // 派生类1 class Cat : Animal { public override void MakeSound() { Console.WriteLine("Cat meows"); } } // 派生类2 class Dog : Animal { public override void MakeSound() { Console.WriteLine("Dog barks"); } } class Program { static void Main() { Animal animal1 = new Cat(); Animal animal2 = new Dog(); animal1.MakeSound(); animal2.MakeSound(); } }
在这个示例中,Animal是基类,Cat和Dog是派生类。我们使用基类Animal类型去实例化Cat和Dog对象,然后调用MakeSound方法。由于MakeSound方法被派生类重写了,所以实际调用的是Cat和Dog类的方法,实现了多态的效果。