责任链

作者: helinyu | 来源:发表于2021-09-08 14:20 被阅读0次

    定义: 使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。 将这个对象连成一条链,并沿着这条链传递该请求,知道有一个对象处理它为止。


    实例:
    1》 RPG中的游戏,攻击过程,攻击不同的防御设备。
    2》申请的各个层级的审批
    3》。。。

    使用的情况:
    1》有多个对象可以处理请求,而处理程序只有在运行时才能够确定
    2》向一组对象发送请求,而不想显式指定处理请求的特定处理程序。

    责任链优点:
    1》接受者和发送者都没有对方的明确信息,且链中的对象自也并不知道链的结构。 简化了对象的相互连接,它们仅仅需要保持以空格指向其他后继的引用, 不需要保存它所有的候选接受者的引用。
    2》 可以随时修改处理一个请求的接口,增加了灵活性

    PS: 主要解决了过多额if...else 以及switch...case的问题。

    相关文章

      网友评论

        本文标题:责任链

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