在C#中,可以通過類的繼承和多態性來實現對象的多態性。下面是一個簡單的示例來演示如何在C#中實現實體類的繼承和多態性:
using System;
// 基類
class Animal
{
public virtual void Speak()
{
Console.WriteLine("Animal speaks");
}
}
// 派生類
class Dog : Animal
{
public override void Speak()
{
Console.WriteLine("Dog barks");
}
}
class Cat : Animal
{
public override void Speak()
{
Console.WriteLine("Cat meows");
}
}
class Program
{
static void Main()
{
Animal animal = new Animal();
Dog dog = new Dog();
Cat cat = new Cat();
animal.Speak(); // 輸出:Animal speaks
dog.Speak(); // 輸出:Dog barks
cat.Speak(); // 輸出:Cat meows
}
}
在這個示例中,Animal
類是一個基類,Dog
和Cat
類是派生類。通過在派生類中重寫基類的虛方法,實現了多態性。在Main
方法中,創建了一個Animal
對象、Dog
對象和Cat
對象,然后調用它們的Speak
方法,根據對象的實際類型輸出不同的結果。
通過實體類的繼承和多態性,我們可以更好地組織和管理代碼,提高代碼的復用性和可維護性。