协议的基本使用
1、定义一个协议@protocol 协议名称
方法声明...
@end
2、如何遵守协议
> 类遵守协议
@interface 类名 : 父类名 <协议名>
> 协议遵守协议
@protocol 协议名称 <协议名称> // 可以理解为协议的继承(类似类的继承)
3、协议中方法声明的关键字
@required // 必须实现的方法
方法声明...
@optional // 可选方法
方法声明...
默认为@required
4、协议的使用场景:代理设计模式
> 创建一个对象:NSObject * obj;如果要求该对象一定要遵守某个协议,则写成 类名<协议名> * 对象名 (如:Person <Protocol> * p)
> 声明一个对象属性时同样可以使用该形式,如@property (nonatomic, strong) id<Protocol> obj;
参考链接:协议(Protocol)与代理设计模式
http://www.yusian.com/forum.php?mod=viewthread&tid=983&fromuid=3
(出处: 小龙虾IT论坛)
页:
[1]