OC语法--协议protocol,代理设计模式概念

协议
协议的声明看起来比较类似一个类的接口,不同的是协议没有父类也不能定义实例变量。协议是一种特殊的程序设计结构,用于声明专门被别的类实现的方法。协议在以下场合非常有用;
需要由别的类实现的方法
声明未知类的接口
两个类之间的通信
协议的基本特点:
协议可以被任何类实现的方法
协议本身不是类,他是定义了一个其他类可实现的接口
类目也可以采用协议
协议的声明
@protocol helloprotocol  <NSObject>
@optional (选择)
-(void)fangfayi
-(void)fangfaer
@required(必须完成)
-(void)required
@end
缺省是required

采用了协议
@interface Person:NSObject<HelloProtocol,…>
@end
实现
@implementation Person
-(void)requireMethod
{
 }
 @end

代理设计模式

当一个对象想监听另一个对象的状态或发生什么事情 用代理
当一个对象状态改变想通知其他人用代理
代理是指一个对象提供机会对另一个对象中的行为发生变化时做出的反应。
代理设计模式的基本思想—两个对象协同解决问题,通常用于对象之间的通信。
代理设计模式的基本特点:
简化了对象的行为,最小化了对象之间的耦合度
使用代理,一般来说无需子类化。
简化了我们应用程序开发,既容易实现,又灵活。
成为对象代理之前,要遵守他的协议,然后实现协议方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值