C#中面向对象编程机制之多态学习笔记
C#的多态性:
我的理解是:同一个操作,作用于不同的对象时,会有不同的结果,即同一个方法根据需要,作用于不同的对象时,会有不同的实现。
C#的多态包括:接口多态,继承多态。
其中继承多态又包括通过虚拟方法实现的多态和通过抽象方法实现的多态性
例如:基类动物都有吃的方法,但是不同的动物吃的东西就会不一样,例如狼吃肉,羊吃草,这样“吃”的这个方法就要在派生类里面重新实现以下,运行时,通过指向基类的指针,来调用实现派生类中的方法。
接下来举例实现多态性。
1.接口多态性
把动物“吃”的方法放到一个接口(IAnimal)里,然后让具体的动物类(Wolf/Sheep)继承这个接口,并根据自己的需要实现这个接口。
代码实现:
classProgram{
staticvoidMain(string[]args){
newWolf().Eat();
newSheep().Eat();
}
}
publicclassWolf:IAnimal{ //多态实现 publicvoidEat(){ Console.WriteLine("狼吃肉!"); } }
publicclassSheep:IAnimal{ //多态实现 publicvoidEat(){ Console.WriteLine("羊吃草!"); } }
//接口 publicinterfaceIAnimal{ voidEat(); }
热门推荐
10 祝孙辈生日祝福语简短
11 恋人跨年祝福语大全简短
12 考大学敬酒简短祝福语
13 开工投产大吉祝福语 简短
14 偶然结婚祝福语朋友简短
15 感谢学长学姐祝福语简短
16 戏精的祝福语简短
17 我要结婚祝福语简短
18 婚前女儿生日祝福语简短