溫馨提示×

C#類的繼承與多態(tài)性解析

c#
小樊
83
2024-08-11 23:39:39
欄目: 編程語言

在C#中,類的繼承是指一個類可以繼承另一個類的屬性和方法。被繼承的類稱為基類或父類,繼承的類稱為子類或派生類。子類可以訪問基類中的公共和受保護(hù)的成員,但不能訪問私有成員。

多態(tài)性是指一個對象可以表現(xiàn)出多種形態(tài)。在C#中,多態(tài)性通常通過方法重寫和虛方法實現(xiàn)。當(dāng)一個類繼承自另一個類并重寫了基類中的虛方法時,可以在運(yùn)行時根據(jù)對象的實際類型調(diào)用相應(yīng)的方法。

例如,有一個基類Animal和兩個子類Dog和Cat。Animal類中有一個虛方法MakeSound,而Dog和Cat分別重寫了MakeSound方法,分別返回"汪汪汪"和"喵喵喵"。當(dāng)調(diào)用MakeSound方法時,根據(jù)對象的實際類型會返回不同的聲音。

class Animal
{
    public virtual string MakeSound()
    {
        return "Animal sound";
    }
}

class Dog : Animal
{
    public override string MakeSound()
    {
        return "汪汪汪";
    }
}

class Cat : Animal
{
    public override string MakeSound()
    {
        return "喵喵喵";
    }
}

Animal dog = new Dog();
Animal cat = new Cat();

Console.WriteLine(dog.MakeSound()); // 輸出 "汪汪汪"
Console.WriteLine(cat.MakeSound()); // 輸出 "喵喵喵"

通過繼承和多態(tài)性,可以更好地組織和重用代碼,提高代碼的可維護(hù)性和擴(kuò)展性。

0