c#的多型的實作
封裝、繼承、多型,面向物件的三大特性,前兩項理解相對容易,但要理解多型,特別是深入的了解,封裝、繼承在實際作業中的應用隨處可見,但多型呢?可能不經意間用到也不會把它跟“多型”這個詞對應起來,通過繼承實作的不同物件呼叫相同的方法,表現出不同的行為,稱之為多型,
允許將子型別別的指標賦值給父型別別的指標,也就是同一操作作用于不同的物件,可以有不同的解釋,產生不同的執行結果,在運行時,可以通過指向基類的指標,來呼叫實作派生類中的方法,
多型的作用到底是什么呢?
其實多型的作用就是把不同的子類物件都當作父類來看,可以屏蔽不同子類物件之間的差異,寫出通用的代碼,做出通用的編程,以適應需求的不斷變化,具體用一個例子來展現:
public class Animal
{
public virtual void Eat()
{
Console.WriteLine(“Animal eat”);
}
}
public class Cat : Animal
{
public override void Eat()
{
Console.WriteLine(“Cat eat”);
}
}
public class Dog : Animal
{
public override void Eat()
{
Console.WriteLine(“Dog eat”);
}
}
class Tester
{
static void Main(string[] args)
{
Animal[] animals = new Animal[3];
animals[0] = new Animal();
animals[1] = new Cat();
animals[2] = new Dog();
for (int i = 0; i < 3; i++)
{
animals[i].Eat();
}
}
}
這三種特征到底有多神奇,需要你在實踐的程序中慢慢體會,很有趣的,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/254957.html
標籤:其他
下一篇:如何撰寫一個d.ts檔案
