前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >设计模式实战 - 责任链模式

设计模式实战 - 责任链模式

作者头像
JavaEdge
发布2019-01-28 11:45:36
6820
发布2019-01-28 11:45:36
举报
文章被收录于专栏:JavaEdgeJavaEdge

1 定义与类型

1.1 定义

  • 维基 它包含了一些命令对象和一系列的处理对象; 每一个处理对象决定它能处理哪些命令对象,它也知道如何将它不能处理的命令对象传递给该链中的下一个处理对象. 该模式还描述了往该处理链的末尾添加新的处理对象的方法.
  • 精简定义 为请求创建一个接收此次请求对象的链.

1.2 类型

行为型

2 适用场景

一个请求的处理需要多个对象当中的一个或几个协作处理 当然也包括需要全部的情况

3 优点

请求的发送者和接收者(请求的处理)解耦 责任链可以动态组合

4 缺点

  • 责任链太长或者处理时间过长,影响性能
  • 责任链有可能过多

5 # 相关设计模式 ~和状态模式

  • 各个对象并不指定下一个所要处理的对象者是谁,只有在客户端类设置链顺序及元素,知道被某个责任链处理或者整条链结束.
  • 每个状态知道自己下一个所要处理的对象者是谁,即在编译时确定

6 实战

  • 相关类
  • UML图
  • 测试类
  • 将博客注释掉
  • 调试过程

开始发布

框架源码应用

  • doFilter相当于 deploy 方法

参考

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.01.19 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 定义与类型
    • 1.1 定义
      • 1.2 类型
      • 2 适用场景
      • 3 优点
      • 4 缺点
      • 6 实战
      • 框架源码应用
      • 参考
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档