Java设计模式之责任链模式(Chain of Responsibility模式)介绍
ChainofResponsibility定义:ChainofResponsibility(CoR)是用一系列类(classes)试图处理一个请求request,这些类之间是一个松散的耦合,唯一共同点是在他们之间传递request。也就是说,来了一个请求,A类先处理,如果没有处理,就传递到B类处理,如果没有处理,就传递到C类处理,就这样象一个链条(chain)一样传递下去。
如何使用责任链模式
虽然这一段是如何使用CoR,但是也是演示什么是CoR。
有一个Handler接口:
publicinterfaceHandler{
publicvoidhandleRequest();
}
这是一个处理request的事例,如果有多种request,比如请求帮助请求打印或请求格式化:
◆最先想到的解决方案是:在接口中增加多个请求:
publicinterfaceHandler{
publicvoidhandleHelp();
publicvoidhandlePrint();
publicvoidhandleFormat();
}
具体是一段实现接口Handler代码:
publicclassConcreteHandlerimplementsHandler{
privateHandlersuccessor;
publicConcreteHandler(Handlersuccessor){
this.successor=successor;
}
publicvoidhandleHelp(){ //具体处理请求Help的代码 ... }
publicvoidhandlePrint(){ //如果是print转去处理Print successor.handlePrint(); } publicvoidhandleFormat(){ //如果是Format转去处理format successor.handleFormat(); }
}
热门推荐
10 祖国祝福语简短走心
11 老师结婚祝福语评论简短
12 女士四十岁祝福语简短
13 爸妈对宝宝祝福语简短
14 中秋骚气祝福语简短情人
15 英文节日祝福语简短唯美
16 女生新年漂亮祝福语简短
17 关于健康的祝福语简短
18 给老公祝福语简短2026