OC:继承
来源:互联网 发布:拼图游戏制作软件 编辑:程序博客网 时间:2024/06/05 04:15
OC继承的特点:
@1. 继承是单向的,不能相互继承。
@2. 继承具有传递性:A继承于B,B继承于C,A具有B和C的特征和行为
@3. OC中只允许单继承
@4. 继承的内容:所有实例变量和方法。
@5. OC中所有的方法(消息),默认都是公有的。
修饰符:
private: 私有成员,不能被外部函数访问(使用),也不能被子类继承;
protected:保护成员,不能被外部函数访问,可以被子类继承;
public: 公有成员,可以被外部函数访问,也可以被子类继承。
注: 默认的权限是 protected。
继承的优缺点:
优点:
@1. 提高代码的复用。
@2. 扩展原有的类。
注意:NSString、NSArray、NSDictionary都是不能够继承的。
缺点:
@1. 破坏了封装性,基类向子类暴露了实现细节 ,白盒重用。
@2. 当父类的实现改变时可能要相应的对子类做出改变
@3. 不能在运行时改变由父类继承来的实现
因此:组合比继承具有更大的灵活性和更稳定的结构,一般情况下应该优先考虑组合.
OC的方法都是虚方法:
1)父类的指针可以指向子类的对象
Person *p = [[Student alloc] init];
此时的p指向子类对象;调用方法时,不看指针,看对象,对象的地址指向什么对象,就调用什么方法,称为虚方法。
2)虚方法的好处:可以描述不同事物被相同事件触发,会产生不同的响应。
0 0
- OC 继承
- OC-继承
- OC继承
- OC 继承
- OC 继承
- oc 继承
- OC 继承
- OC:继承
- oc继承
- OC 继承
- OC 继承
- OC-011.OC中的继承
- OC——继承
- OC的继承 初始化
- OC之类的继承
- oc 多继承
- OC--封装,继承,多态
- 继承错误(OC)
- 什么时候用泛型
- 将Windows的IE11降级为原先的IE版本
- LinkList的一个简单实现
- eclipse Failed to create the part's controls 解决方法
- linux系统信息命令
- OC:继承
- fastjson 解析
- Android 下拉选择
- 【ios开发学习 - 第一课】页面跳转
- Python游戏编程笔记_BGDwPaP_0303
- Linux权限管理1——ACL权限
- RT5350共享定时器
- linux 文件和目录管理
- leetcode--Binary Tree Level Order Traversal II