zoukankan      html  css  js  c++  java
  • 责任链

    1 意图:多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。

               将这些对象连成一条链,沿着这条链传递该请求,知道有一个对象处理它为止。

    2 动机:要沿链请求,并保证接收者是隐式的,每个链上的对象都有一只的处理请求和访问链上后继者的接口。

    3 适用性:

       .有多个对象可以处理一个请求,哪个对象处理请求运行时刻自动确定。

       .在不明确指定接收者的情况下,向多个对象中的一个提交请求。

       .可处理一个请求的对象集合应被动态指定

    4 参与者:

       Handler:定义一个处理请求的接口,实现后继链(可选)

       ConcreteHandler:处理它所负责的请求,可访问它的后继者。

                                如果可处理该请求,就处理之。否则将该请求转发给它的后继者。

       Client:向链上的处理这对象提交请求

    5 协作:

       当客户提交一个请求时,请求沿链传递直至有一个ConcreteHandler对象负责处理它。

    6 效果:

      1)降低耦合度

      2)增强给对象指派职责的灵活性

      3)不保证被接受

    7 实现:

      1)实现后继者,两种办法:

          . 定义新的链接

          .使用已有的链接

      2)连接后继者

      3)表示请求

    8 相关模式:

       责任链与Composite一起使用

  • 相关阅读:
    CSS 选择器之复合选择器
    答辩ppt
    开题报告
    ADS1110/ADS1271
    电感、磁珠和零欧电阻的区别
    ROM、RAM、DRAM、SRAM和FLASH区别
    运放的带宽
    ADC 分辨率和精度的区别
    Verilog
    C语言 文件读取
  • 原文地址:https://www.cnblogs.com/criticalsection/p/5689457.html
Copyright © 2011-2022 走看看