在C#中,類的繼承是指一個類可以繼承另一個類的屬性和方法。被繼承的類稱為基類或父類,繼承的類稱為子類或派生類。子類可以訪問基類中的公共和受保護的成員,但不能訪問私有成員。
多態性是指一個對象可以表現出多種形態。在C#中,多態性通常通過方法重寫和虛方法實現。當一個類繼承自另一個類并重寫了基類中的虛方法時,可以在運行時根據對象的實際類型調用相應的方法。
例如,有一個基類Animal和兩個子類Dog和Cat。Animal類中有一個虛方法MakeSound,而Dog和Cat分別重寫了MakeSound方法,分別返回"汪汪汪"和"喵喵喵"。當調用MakeSound方法時,根據對象的實際類型會返回不同的聲音。
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()); // 輸出 "喵喵喵"
通過繼承和多態性,可以更好地組織和重用代碼,提高代碼的可維護性和擴展性。