十一个行为型模式1:职责链模式-Chain of Responsibility Pattern【学习难度:★★★☆☆,使用频率:★★☆☆☆】 左手的ㄟ右手 2022-06-08 08:12 109阅读 0赞 **引入动机:**职责链可以是一条直线、一个环或者一个树形结构,最常见的职责链是直线型,即沿着一条单向的链来传递请求。 链上的每一个对象都是请求处理者,职责链模式可以将请求的处理者组织成一条链,并使请求沿着链传递,由链上的处理者对请求进行相应的处理,客户端无须关心请求的处理细节以及请求的传递,只需将请求发送到链上即可,将请求的发送者和请求的处理者解耦。这就是职责链模式的模式动机。 **职责链模式(Chain of Responsibility Pattern):**避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。由于英文翻译的不同,职责链模式又称为责任链模式,它是一种对象行为型模式。 ![这里写图片描述][SouthEast] 职责链模式包含如下角色: **Handler: 抽象处理者** public abstract class Handler { protected Handler successor; public void setSuccessor(Handler successor) { this.successor=successor; } public abstract void handleRequest(String request); } **ConcreteHandler: 具体处理者** public class ConcreteHandler extends Handler { public void handleRequest(String request) { if(请求request满足条件) { ...... //处理请求; } else { this.successor.handleRequest(request); //转发请求 } } } **Client: 客户类** 可以参考这个例子 ![这里写图片描述][SouthEast 1] **参考链接:** [职责链模式][Link 1] [SouthEast]: /images/20220608/37b07a2a74a44476b186354dff830436.png [SouthEast 1]: /images/20220608/b8068c9784c547be896c3e4386903cbf.png [Link 1]: http://blog.csdn.net/lovelion/article/details/7420891
还没有评论,来说两句吧...