OC-6-三大特性:多态
来源:互联网 发布:oracle单条数据被锁 编辑:程序博客网 时间:2024/04/30 11:27
---------- CornerFly真诚期待与您交流! ----------
一、概述
1、多态:某一类事物的多种形态,OC对象具有多态性。
2、注意点:没有继承就没有多态
3、动态的好处:如果函数\方法中使用的是父类类型,可以传入父类,子类对象
4.局限性:父类类型的变量,不能直接调用子类特有的方法,如果想调用,必须强转为子类类型的变量后,才能直接调用子类特有的方法。
二、代码体现
1、父类类型的指针指向子类对象,调用方法时会检测子类对象类型。
Dog *d = [Dog new]; // Dog 类型的对象
Animal *a = [Dog new]; // 多态
2、代码体现
#import <Foundation/Foundation.h>// 动物@interface Animal : NSObject- (void)eat;@end@implementation Animal- (void)eat{NSLog(@"Animal--吃东西----");}@end// 狗@interface Dog : Animal- (void)run;@end@implementation Dog- (void)run{NSLog(@"Dog---跑起来");}- (void)eat{NSLog(@"Dog--吃东西----");}@end// 这个函数专门用来喂动物的// 如果参数中使用的是父类类型,可以传入父类,子类对象void feed(Animal *a){[a eat];}int main(){// 多态:父类类型的指针指向子类对象,Animal *aa = [Dog new]; // 将Animal类型的指针强制转换为Dog类型Dog *dd = (Dog *)aa;// 多态的局限性:父类类型的变量,不能直接调用子类特有的方法// [aa run];[dd run];[dd feed];return 0;}
0 0
- OC-6-三大特性:多态
- OC---三大特性
- OC三大特性
- OC三大特性
- 六---oc三大特性
- OC语言三大特性
- OC语言三大特性
- OC温故:类的三大特性(封装,继承,多态)
- 黑马程序员——OC三大特性-7:多态
- OC温故:类的三大特性(封装,继承,多态)
- 黑马程序员--OC的三大特性 封装 继承 多态
- OC中的类的三大特性:继承,封装,多态
- 黑马程序员——OC三大特性-6:继承
- 黑马程序员:OC三大特性
- 黑马程序员 5 oc三大特性
- OC面向对象三大特性
- OC面向对象三大特性
- OC三大特性之封装
- Cacti部署(一)
- 一些比较好的Js正则验证
- linux进程通信之共享存储区和信号量
- 怎么验证Win7旗舰版是否为正版?正版win7系统验证技巧
- Mysql Show详解
- OC-6-三大特性:多态
- kendo ComboBox显示多列数据(自定义样式)
- [css]组件设计
- 正则表达式
- select()函数以及FD_ZERO、FD_SET、FD_CLR、FD_ISSET
- AutoMutex
- jQuery+目标异步加载
- Hibernate 缓存详解
- ngrok 内网穿透利器