一、协议用于:观察者模式,代理模式
二、协议只是用来声明方法
只要一个类遵守了某一份协议,就能拥有这份协议中的所有声明的方法
只要父类遵守这个协议,就相当于子类也遵守
一个类可以遵守多个协议
三、协议的定义
@protocol 协议名称<NSObject>
//方法声明列表
@end
四、类遵守协议:
@interface 类名:NSObject <协议名1,协议名2>
@end
五、约束关键字
@required//要求必须实现,不实现就会发出警告
@optional//不要求实现,可以实现可以不实现
//默认的必须实现
六、协议遵守协议
一个协议遵守另一个协议,就可以拥有另一个协议的所有方法声明
@protocol 协议名<协议名2>
@end
//NSObject是基协议,所有协议默认的遵守基协议
七、协议的提前声明
@protocol 协议名称;
八、定义一个变量的时候,限制这个变量保存的对象遵守某个协议
类名<协议名称> *变量名;
id<协议名称> 变量名
时间: 2024-12-29 23:47:47