设计模式学习--责任链模式

原创 2016年06月01日 07:30:43

责任链模式: 使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间的耦合关系,将这些对象连成一条链,并沿着这条链传递该请求,只到有对象处理他未止.


使用场景:

多个对象可以处理同一个请求,但具体由哪个对象处理则在运行时动态觉得

在请求处理者不明确的情况下向对个对象中的一个提交一个请求

需要动态指定一组对象处理请求


对于职责链中的一个处理者对象,其只有两个行为,一是处理请求, 二是将请求转送给下一个节点,不允许某个处理者对象在处理了请求后又将请求转送给上一个节点的情况.

责任链模式在android源码中比较类似的实现是对事件的分发处理.

当客户提交一个请求时,请求时沿链传递至有一个对象复杂处理它, 这样使得接受者和发送者都没有对方的明确信息,且链中的对象也并不知道链的结构,结果是职责链可简化对象的相互连接,他们仅需保持一个指向其后继者的引用,而不需保持它所有的候选接受者的引用.这也就大大的降低了耦合度.

版权声明:本文为博主原创文章,欢迎转载,请注明出处,谢谢。

23钟设计模式之责任链模式

  • 2013年08月13日 10:54
  • 19KB
  • 下载

设计模式的责任链模式的例子

  • 2011年12月21日 11:02
  • 3KB
  • 下载

设计模式C++学习笔记之十七(Chain of Responsibility责任链模式)

博文很精彩,为方便个人学习特转载,地址:http://www.cnblogs.com/wanggary/archive/2011/04/20/2022988.html 17.1.解释 概念:使...
  • phiall
  • phiall
  • 2016年03月17日 23:00
  • 243

设计模式之责任链模式(Chain)

  • 2011年07月07日 09:37
  • 12KB
  • 下载

设计模式之责任链模式程序

  • 2009年06月12日 08:34
  • 3KB
  • 下载

设计模式C++学习笔记之十七(Chain of Responsibility责任链模式)

17.1.解释 概念:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 main(),客户 ...

设计模式之责任链模式Java实现

  • 2013年05月02日 22:42
  • 23KB
  • 下载

设计模式之责任链模式

  • 2013年03月23日 01:59
  • 2KB
  • 下载

设计模式C++学习笔记之十七(Chain of Responsibility责任链模式)

设计模式C++学习笔记之十七(Chain of Responsibility责任链模式) 17.1.解释 概念:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对...

设计模式-责任链模式

  • 2016年11月28日 21:07
  • 45KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:设计模式学习--责任链模式
举报原因:
原因补充:

(最多只允许输入30个字)