OC_多态
来源:互联网 发布:特效照片制作软件 编辑:程序博客网 时间:2024/04/30 19:16
多态:多种形态
来自不同类的对象可以定义共享相同名称的方法(不同类名,相同方法名)
id类型可以存储任何对象。
父类指针,指向子类对象 调用方法时,会检测对象的真实类型
代码示例:
@interface Animal : NSObject-(void)run;@end@implementation Animal-(void)run{ NSLog(@"跑");}
@interface Dog ()-(void)run;@end@implementation Dog-(void)run{ NSLog(@"--dog run");}@end
Animal * d = [Dog new]; //父类指针,指向子类对象 [d run];//调用方法时,会检测对象的真实类型
//参数使用的是父类对象,可以传入父类、子类对象void feed (Animal *a){ [a run];}
//没有继承就没有多态 Dog * d = [Dog new]; Cat * s = [Cat new]; feed(d); feed(s); //父类类型的指针指向子类对象 Animal * aa = [Dog new]; //[aa run]; /*多态的局限性,父类类型的变量,不能用来调用子类的方法*/ [(Dog*)aa run];
1 0
- OC_多态
- OC_多态
- OC_语法入门_day2_封装/继承/多态/self/super
- 小白学开发(iOS)OC_多态(2015-07-27)
- Oc_总结
- OC_类
- OC_语法
- OC_语法
- OC_语法
- OC_语法
- OC_继承
- OC_属性
- OC_属性
- OC_属性
- OC_字符串
- OC_数组
- OC_数组
- OC_字典
- 黑马程序员——反射
- iOS开源项目大全(二)(整理自网络)
- 关于集群--摘自群聊
- 解决 singleTask onActivityResult() 无效的问题
- IOS-自动布局和视图化语言1
- OC_多态
- C/C++常用算法【C语言顺序查找(随机数)】【1】
- 简单的网络协议介绍
- 将字符串转换成数字
- sap 教程编号
- 文章标题
- Eclipse中最有用的快捷键组合
- Makefile知识点温习
- js判断接入设备