zoukankan      html  css  js  c++  java
  • .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/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    前端 ---- ajax(2)
    前端 ---- ajax(1)
    前端 ---- 博客项目
    Vue 重复进入相同路由消除警报
    axios和message注册全局变量不一样
    element-ui 的input组件 @keyup.enter事件的添加办法
    前端 ----Express
    MyBatis学习一
    SpringMVC学习一
    JVM学习一
  • 原文地址:https://www.cnblogs.com/dingli/p/2262197.html
Copyright © 2011-2022 走看看