黑马程序员技术交流社区
标题: 继承的好处 [打印本页]
作者: qinyawan 时间: 2015-11-24 14:11
标题: 继承的好处
继承:当C类继承了B类,C类就称之为子类,B类就称之为父类(超类)。
l OC支持多层继承,不支持多继承
l 在继承当中调用方法,首先会在本类中找,如果本类没有找到就去父类中找
l 如果在子类中实现了和父类中同名同类型的方法,我们称之为重写
l 在子类中不仅可以重写父类当中的对象方法,也可以重写父类当中的类方法
l 在OC当中子类继承了父类,就不能定义和父类同名的成员变量
l 当A类继承了B类,A类就拥有了B类所有的成员变量和方法
优点:
1. 继承的出现减少了代码量
2. 提高了代码的安全性
3. 让类与类之间产生了关系
4. 让phone和Iphone有了关系(父子关系),正是因为有了父子关系才有多态的特性让IPhone和Anycall有了关系(兄弟关系)
坏处:
耦合性太强(依赖)。
子父类中的方法调用顺序:
先在本类中找,如果本类没有再到父类中找,如果父类中没有,就到爷爷类中找,NSObject是99.9%的类的父类。
super:明确的告诉程序要执行父类中的方法
file://localhost/Users/qiaoming/Library/Caches/TemporaryItems/msoclip/0/clip_image002.png
使用场合:子类重写父类方法的时候想保留父类的一些行为的时候。
l 使用super在对象方法中调用父类的方法会调用父类的对象方法
l 使用super在类方法中调用父类方法,会调用父类的类方法
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |