首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C# - 在类中使用多态,我没写

在C#中,多态是一种允许对象采用多种形式的编程技术。多态允许您使用一个通用的基类或接口来引用不同类型的对象,从而使您能够编写更灵活、可扩展和可维护的代码。

在类中使用多态的一种方法是通过虚方法和抽象方法。虚方法是在基类中声明的方法,可以在派生类中重写。抽象方法是在抽象类中声明的方法,必须在派生类中实现。

以下是一个使用多态的示例:

代码语言:csharp
复制
using System;

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

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

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

public class Program
{
    public static void Main()
    {
        Animal[] animals = new Animal[] { new Dog(), new Cat() };

        foreach (Animal animal in animals)
        {
            animal.MakeSound();
        }
    }
}

在这个示例中,我们创建了一个基类Animal,其中包含一个虚方法MakeSound()。然后我们创建了两个派生类DogCat,它们分别重写了MakeSound()方法。

Main()方法中,我们创建了一个Animal数组,其中包含DogCat对象。然后我们遍历数组并调用每个对象的MakeSound()方法。由于这些方法是虚方法,因此每个对象都将调用其自己的实现,即Dog将调用Dog.MakeSound()Cat将调用Cat.MakeSound()

这种使用多态的方法使得代码更加灵活和可扩展,因为您可以在不修改基类的情况下添加新的派生类。此外,它还可以使代码更易于维护,因为您可以将通用的代码放在基类中,而将特定于派生类的代码放在派生类中。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

13分17秒

002-JDK动态代理-代理的特点

15分4秒

004-JDK动态代理-静态代理接口和目标类创建

9分38秒

006-JDK动态代理-静态优缺点

10分50秒

008-JDK动态代理-复习动态代理

15分57秒

010-JDK动态代理-回顾Method

13分13秒

012-JDK动态代理-反射包Proxy类

17分3秒

014-JDK动态代理-jdk动态代理执行流程

6分26秒

016-JDK动态代理-增强功能例子

10分20秒

001-JDK动态代理-日常生活中代理例子

11分39秒

003-JDK动态代理-静态代理实现步骤

8分35秒

005-JDK动态代理-静态代理中创建代理类

8分7秒

007-JDK动态代理-动态代理概念

领券