Objective-C

多态

2019-02-20  本文已影响4人  越天高

1.什么是多态?

2.多态的条件

狗 *g = [狗 new];
动物 *a = [狗 new];
猫 *c = [猫 new];
动物 *a = [猫 new];

3.多态的优点


多态的实现

1.如何实现多态

Animal *animal = nil;

//实例化猫的对象
animal = [Cat new];
[animal eat];

//实例化狗的对象
animal = [Dog new];
[animal eat];

3.多态的注意点

假设 子类 Dog 有一个特有的方法bark
[dog bark];
Animal *an2 = [Dog new];
[(Dog*)an2 bark]; //把父类的指针,强制类型转换
Animal *an3 = [Animal new];
[(Dog*)an3 bark]; //错误的,不能强制转换
上一篇下一篇

猜你喜欢

热点阅读