iOS面试总结

OC语言之代理与通知

2019-06-14  本文已影响0人  Jimmy_L_Wang

代理

代理的工作流程

协议中除了方法,还可以定义属性

代理的工作流程.png

一般声明为weak以规避循环引用。

通知(NSNotification)

通知.png

如何实现通知机制?

NSNotificationCenter系统类中可能会维护一个Notification_Map,其中的key值是notificationName,value是一个Observers_List(监听者列表),所以列表包含通知接收的观察者,其次还要包含关于观察者调用的方法,比如收到通知之后,观察者的回调方法是哪个。所以列表中包括观察者对象,以及回调方法的相关数据信息

通知机制.png

代理与通知的区别

代理是由代理模式实现的,其传递方式为一对一,通知是由观察者模式实现的,其传递方式是一对多

上一篇 下一篇

猜你喜欢

热点阅读