设计模式之责任链模式

作者: ahking17 | 来源:发表于2017-03-03 18:15 被阅读62次
    定义

    职责链模式(Chain of Responsibility):使多个对象都有机会处理请求,避免请求的发送者和接收者之间存在耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。
    1)在职责链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。
    2)请求在这条链上传递,直到链上的某一个对象处理此请求为止。
    3)发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织链和分配责任。

    android源码典型应用 - view事件的传递
    事件传递.jpg
    android源码典型应用 - 有序广播

    sendOrderedBroadcast()
    对于有序广播而言,前面的接收者可以对接收到的广播意图(Intent)进行处理,并将处理结果放置到intent中,然后传递给下一个接收者,当然前面的接收者有权终止广播的进一步传播。如果广播被前面的接收者终止后,后面的接收器就再也无法接收到广播了。

    ---DONE.----

    相关文章

      网友评论

        本文标题:设计模式之责任链模式

        本文链接:https://www.haomeiwen.com/subject/xeprgttx.html