行为型模式-----责任链模式(chain of responsibility)
2013-09-03 11:11
302 查看
1、责任链模式
有多个对象,每个对象持有下一个对象的引用,这样就会形成一条链,请求在这条链上传递,直到某一对象决定处理该请求,但是发出请求者
并不清楚到底最终是哪个对象会处理请求,所以,责任链可以实现,在隐藏客户端的情况下,对系统进行动态的调整。
(有多个对象可以处理一个请求,哪个对象处理该请求运行时刻自动确定)
![](http://hi.csdn.net/attachment/201101/2/0_12939589762WWi.gif)
实例一
模拟调用
有多个对象,每个对象持有下一个对象的引用,这样就会形成一条链,请求在这条链上传递,直到某一对象决定处理该请求,但是发出请求者
并不清楚到底最终是哪个对象会处理请求,所以,责任链可以实现,在隐藏客户端的情况下,对系统进行动态的调整。
(有多个对象可以处理一个请求,哪个对象处理该请求运行时刻自动确定)
![](http://hi.csdn.net/attachment/201101/2/0_12939589762WWi.gif)
实例一
public abstract class Handler { private Handler handler; public abstract void execute(); public Handler getHandler() { return this.handler; } public void setHandler(final Handler handler) { this.handler = handler; } } public class MyHandler extends Handler { private String name; public MyHandler(final String name) { this.name = name; } @Override public void execute() { System.out.println(" ~~ 当前处理器名称为: " + this.name); if ("zhangsan".equals(this.name)) { System.out.println(" ~~ 进行处理 ~~~~ : " + this.name); } else { this.getHandler().execute(); } } } public class OtherHandler extends Handler { private String name; public OtherHandler(final String name) { this.name = name; } @Override public void execute() { System.out.println(" ~~ 当前处理器名称为: " + this.name); System.out.println(" ~~~~ 进行处理 ~~~~ : " + this.name); } }
模拟调用
public static void main(final String[] args) { final Handler h1 = new MyHandler("zhangsan1"); final Handler h2 = new OtherHandler("h2"); h1.setHandler(h2); h1.execute(); }
相关文章推荐
- 设计模式-行为型- 责任链模式(Chain of Responsibility)
- 行为型模式之责任链模式(Chain of Responsibility)
- 十六.行为型设计模式——Chain of Responsibility(责任链模式)
- 设计模式——行为型模式之借助责任链模式(Chain of Responsibility)灵活完成链式处理(五)
- 设计模式(行为型模式) ----- 责任链模式(Chain of Responsibility)
- [设计模式-行为型]责任链模式(Chain of Responsibility)
- 设计模式(13)-行为型-责任链模式(Chain of Responsibility)
- 【行为型模式】责任链模式(chain of responsibility)之23种java设计模式
- [设计模式-行为型]责任链模式(Chain of Responsibility)
- 设计模式(Design Pattern) - 行为型模式(Behavioral Pattern) - 责任链模式(Chain of Responsibility) - Java实现
- 行为型模式之责任链模式(Chain of Responsibility)
- 设计模式(4)-行为型-责任链模式(Chain of Responsibility)
- 设计模式(4)-行为型-责任链模式(Chain of Responsibility)
- 设计模式(4)-行为型-责任链模式(Chain of Responsibility)
- 设计模式(4)-行为型-责任链模式(Chain of Responsibility)
- (三)二十三中设计模式之我见-------------责任链模式(Chain of Responsibility)
- [设计模式]责任链模式(Chain of Responsibility)
- GOF23设计模式之责任链模式(chain of responsibility)与结构型模式总结经典
- 设计模式初探-责任链模式(CHAIN OF RESPONSIBILITY)
- 设计模式之责任链模式(Chain of Responsibility)