第 7 章 使用协议
7.1 优先使用组合而不是继承
BusinessLogic
NetworkConnector
7.1.1 了解为什么不需要多继承
会发生多义性
7.1.2 理解协议如何解决问题
7.1.3 记录期望别人实现的接口
7.2 在对象中实现协议
7.2.1 声明协议
@protocol
实现该协议的类不仅需要实现其所声明的方法,而且也需要实现所继承的任何协议的方法。
关键字 @required
协议不能有成员变量。因此,在协议声明中没有成员变量的位置。
7.2.2 声明一个类实现了协议
7.2.3 声明一个必须实现协议的对象
7.2.4 正式协议和非正式协议
7.2.5 确定一个对象是否实现了可选方法
@protocol(NetworkClient)
7.2.6 避免协议循环依赖
7.3 协议使用示例
7.4 小结
本章介绍了 Objective-C 中强大的分离机制—协议。利用协议,你能够编写复用性更高的代码,从而使得组件同具体实现分离。通过协议,你可以说“我不关注对象的类型,只要你实现了该接口,我就会和你交互”。协议是 Objectie-C 中的关键技术。协议使得 Objective-C 有别于且优于其他大多数语言。
网友评论