• .NET责任链(Chain)模式


    目录

    1. 定义
    2. UML
    3. 参与者
    4. 示例

    定义:

    责任链模式是一种对象的行为模式。比如:来了一个请求,A类先处理,如果没有处理,就传递到B类处理,如果没有处理,就传递到C类处理,就这样象一个链条(chain)一样传递下去。

    UML:

    参与者:

    1、抽象处理者角色(Handler):

    定义出一个处理请求的接口。

    2、具体处理者角色(ConcreteHandler):

    具体处理者接到请求后,可以选择将请求处理掉,或者将请求传给下家。由于处理者持有下家引用,因此,如果需要,具体处理者可以访问下家。

     

    示例:

    代码

    Output

    ConcreteHandler1 handled request 2
    ConcreteHandler1 handled request 5
    ConcreteHandler2 handled request 14
    ConcreteHandler3 handled request 22
    ConcreteHandler2 handled request 18
    ConcreteHandler1 handled request 3
    ConcreteHandler3 handled request 27
    ConcreteHandler3 handled request 20

     

    实际运用:

    代码

    Output

    Director Larry approved request# 2034
    President Tammy approved request# 2035
    Request# 2036 requires an executive meeting!


    作者:dingli
    出处:http://www.cnblogs.com/dingli/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    2019CCPC厦门游记
    [codeforces940E]Cashback
    [codeforces#592Div2]C-G题
    Material Design UI素材库【React版】【2】--定制
    Material Design UI素材库【React版】【1】--入门
    resin中配置session相关参数
    quartz定时任务
    Linux内核----make menuconfig时出错
    【Qt学习之路】Qt开发环境搭建
    已学算法与数据结构的习题
  • 原文地址:https://www.cnblogs.com/dingli/p/2262197.html
Copyright © 2020-2023  润新知