A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© u37kl 中级黑马   /  2016-2-20 15:01  /  776 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

继承:
1、OC中的根类NSObject,没有父类。
2、每一个自定义OC类都必须继承NSObject类或NSObject类的子类。
3、子类会继承父类所有的成员变量和方法,包括在父类实现中声明的变量和没有在类声明中声明的方法。
4、子类不能声明和父类同名的成员变量。
5、子类可以覆写父类的方法。
6、子类调用方法时,优先从本类中找,找不到才到父类中找,每个类都有一个superClass指针指向自己的父类,通过该指针找到父类的类对象(类对象中保存该类的方法列表)。
7、继承优点:将相同的实体的共同属性和行为抽象出来,减少代码的冗余。
8、继承缺点:增加类与类之间的耦合性,每个父类都是子类的存在前提。



--------------------------------------------------------------------------------------------
组合:
1、类与类之间的关系:继承和组合。
2、何为组合:某个类是另一个类的成员变量,即某类拥有某类,例如:Person类和Dog类,这两个类没有继承关系,只有人拥有狗才符合逻辑。



--------------------------------------------------------------------------------------------
多态:
1、何为多态:类的多种形态,例如人有三种状态分别为男人、女人、太监。
2、动态绑定:父类指针指向子类对象,系统会根据所指向的类的实际类型,调用相应的方法。
3、多态好处:当父类作为方法参数时,可以接收所有继承父类的子类对象,提高了代码的重用性。
4、多态局限性:父类指针指向子类对象时,不能调用子类特有的方法,除非对指针变量进行强制类型转换。
5、OC中id类型指针可以指向任何OC对象,并且可以访问对象的任何方法,没有多态局限性。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马