多态
来源:互联网 发布:mysql strict mode 编辑:程序博客网 时间:2024/05/21 22:44
/* 多态:多种形态(建立在继承的基础之上) 多态的体现:父类指针指向子类,每个OC对象都有多态性 多态的局限性:父类指针不能直接调用子类特有的方法,如果要正常调用子类特有的方法 需要将父类指针强制转换为子类指针 */#import<Foundation/Foundation.h>@interface Zoombie:NSObject-(void)walk;@end@implementation Zoombie-(void)walk{ NSLog(@"僵尸走几步,,,,");}@end@interface JumpZoombie:Zoombie-(void)walk;@end@implementation JumpZoombie-(void)walk{ NSLog(@"僵尸跳几步,,,");}@endint main(){ //第一种状态 JumpZoombie *jump = [JumpZoombie new]; [jump walk]; //第二种状态:父类指针指向子类对象 //Zoombie 类型的指针指向了新建的对象 Zoombie *j = [JumpZoombie new]; /* 这个方法在执行的过程中,执行一个“动态绑定”; 动态绑定就是检测指针所指对象的对象是什么类型,该对象实质是JumpZoombie创建的对象,所以指针指向JumpZoombie对象,所以 调用该对象中的方法; */ [j walk]; return 0;}
运行结果
:
1 0
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- 多态
- leetcode 6. ZigZag Conversion
- 大型网站的架构设计详解1
- 沈向洋谈做研究的那些事儿
- vsftpd安装配置[ubuntu下亲测可用]
- C中进程管理函数
- 多态
- 机房收费系统调错总结(一)
- ml笔记01
- zip版tomcat(6,7)不能注册成windows服务或者注册后不能启动的问题解决
- unable to open input file:helloworld.asm
- Mac环境下JAVA开发环境搭建
- css2
- 第十五周项目1—程序填空
- Activity 生命周期