协议的定义:
@protocol 协议名称<NSObjet> //默认遵守NSObject协议
//方法声明
@end
协议的采纳:
@interface 类名:父类<协议名称1,协议名称2>
@end
@protocol 协议名称<其他协议名称1,其他协议名称2>
//方法声明
@end
protocol中@required和@optional的使用:
- @required:表示这个方法必须要实现(默认)
- @optional:表示这个方法不是必须要实现的
protocol类型限制:
//1>增加<houseHold>以后,表示obj只能赋值遵守了houseHold协议的对象
id<houseHold> obj = mm;
//2>表示obj2赋值的时候,必须是Girl对象,并其遵守了houseHold协议
Girl<houseHold> *obj2 = mm;
//3>让定义的成员属性(对象)遵守某个协议
@property (nonatomic,strong) Dog<协议名称> *dog;
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。