7 多态
2016-02-02 18:18
218 查看
多态
Override 重写
重写只能重写方法。对属性的重写实际上应该是重写属性的SetterGetter方法。在子类中使用self调用方法,如果该方法已经被override,则会调用子类的方法。如果需要调用被覆盖的父类的方法实现,则需要使用
[super methodName];来进行调用。
经典多态调用
变量声明成为父类指针之后,可以被赋值成为子类对象,并可以在被赋值调用子类的所有方法和属性。虽然被声明的指针是父类指针,但是指针任然以实际类型为准。因此可以用父类指针,多态的调用各种子类对象的方法。
SuperClass * point = [[SonClass alloc] init]; [point method]; // 实际调用的是SonClass的method方法,而不是SuperClass的method方法。 point = [[SonClassB alloc] init]; [point method]; // 实际调用的则是SonClassB的method方法。
相关文章推荐
- Python动态类型的学习---引用的理解
- 土人系列AS入门教程 -- 对象篇
- C#托管堆对象实例包含内容分析
- C#与.net高级编程 C#的多态介绍
- C#中面向对象编程机制之多态学习笔记
- C#实现获取不同对象中名称相同属性的方法
- javascript asp教程第十一课--Application 对象
- C#中的多态深入理解
- PowerShell中使用Out-String命令把对象转换成字符串输出的例子
- C#中多态、重载、重写区别分析
- VBS教程:对象-正则表达式(RegExp)对象
- 设计引导--一个鸭子游戏引发的设计理念(多态,继承,抽象,接口,策略者模式)
- C#检查指定对象是否存在于ArrayList集合中的方法
- sql2008启动代理未将对象应用到实例解决方案
- C#编程自学之类和对象
- C++中对象的常引用、动态建立和释放相关知识讲解
- php中将一个对象保存到Session中的方法
- php对象和数组相互转换的方法
- PHP中把对象转换为关联数组代码分享
- C#写入对象或集合类型数据到xml文件的方法