码迷,mamicode.com
首页 > 其他好文 > 详细

职责链模式

时间:2015-11-12 23:36:05      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:

1、职责链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接受者的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,指导有一个对象处理它为止。
2、优点:(1)、当客户提交一个申请时,请求是沿链传递直至有一个对象负责处理它位置。在客户端根本不需要知道是谁做的处理。(2)、简化对象的相互连接,它们仅需要保持一个指向其后继者的引用,而不需要保持它所有的候选接受者的引用。(3)、可以随时增加或者修改处理一个请求的结构。增强了给对象纸牌职责的灵活性。
3、注意:一个请求极有可能到链的末端都得不到处理,或者因为没有正确的配置而得不到处理。这一点在设计时必须考虑进去。
4、组成:
(1)、抽象处理者(Handler)角色:定义出一个处理请求的接口。如果需要,接口可以定义 出一个方法以设定和返回对下家的引用。这个角色通常由一个Java抽象类或者Java接口实现。上图中Handler类的聚合关系给出了具体子类对下家的引用,抽象方法handleRequest()规范了子类处理请求的操作。
(2)、具体处理者(ConcreteHandler)角色:具体处理者接到请求后,可以选择将请求处理掉,或者将请求传给下家。由于具体处理者持有对下家的引用,因此,如果需要,具体处理者可以访问下家。

职责链模式

标签:

原文地址:http://www.cnblogs.com/zxtp/p/4960503.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!