c#

typeof c#如何实现多态

小樊
82
2024-12-04 23:31:19
栏目: 编程语言

在C#中,多态是通过继承和接口实现的。这里有一个简单的例子来说明如何使用多态:

首先,我们创建一个基类Animal,它有一个方法Speak()

public class Animal
{
    public virtual void Speak()
    {
        Console.WriteLine("The animal makes a sound");
    }
}

然后,我们创建两个继承自Animal的子类:DogCat。这两个子类重写了Speak()方法,以输出各自的声音:

public class Dog : Animal
{
    public override void Speak()
    {
        Console.WriteLine("The dog barks");
    }
}

public class Cat : Animal
{
    public override void Speak()
    {
        Console.WriteLine("The cat meows");
    }
}

现在,我们可以创建一个Animal类型的变量,并将其指向DogCat对象。当我们调用Speak()方法时,将根据对象的实际类型执行相应的实现:

Animal myAnimal = new Dog();
myAnimal.Speak(); // 输出 "The dog barks"

myAnimal = new Cat();
myAnimal.Speak(); // 输出 "The cat meows"

这就是C#中实现多态的基本方法。通过使用基类类型的变量引用子类对象,我们可以调用子类中重写的方法,从而实现多态。

0
看了该问题的人还看了