Java设计模式--------行为模式和总结.pdf

Java设计模式--------行为模式和总结.pdf

ID:52442835

大小:1.17 MB

页数:157页

时间:2020-03-27

Java设计模式--------行为模式和总结.pdf_第1页
Java设计模式--------行为模式和总结.pdf_第2页
Java设计模式--------行为模式和总结.pdf_第3页
Java设计模式--------行为模式和总结.pdf_第4页
Java设计模式--------行为模式和总结.pdf_第5页
资源描述:

《Java设计模式--------行为模式和总结.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、责任链模式责任链模式使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。ChainofResponsibilityPatternAvoidcouplingthesenderofarequesttoitsreceiverbygivingmorethanoneobjectachancetohandletherequest.Chainthereceivingobjectsandpasstherequestalongthechainuntilanobjecthand

2、lesit.2011-11-291概述使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,这条链传递该请求,直到有一个对象处理它为止。这一模式的想法是,给多个对象处理一个请求的机会,从而解耦发送者和接受者.2011-11-292责任链模式的结构与使用模式的结构中包括两种角色:•处理者(Handler)•具体处理者(ConcreteHandler)2011-11-293模式的UML类图2011-11-294参与者1.Handler定义一个处理请求的接口。实现后继链。2.ConcreteHandler处理它所负

3、责的请求。可访问它的后继者。如果可处理该请求,就处理;否则将该请求转发给它的后继者。3.Client向链上的具体处理者(ConcreteHandler)对象提交请求。模式的结构的描述与使用1.处理者(Handler):Handler.javapublicinterfaceHandler{publicabstractvoidhandleRequest(Stringnumber);publicabstractvoidsetNextHandler(Handlerhandler);}2011-11-296模式的结构的描述与使用2.具体处理者(Concret

4、eHandler)_1:Beijing.javaimportjava.util.*;publicclassBeijingimplementsHandler{privateHandlerhandler;privateArrayListnumberList;Beijing(){numberList=newArrayList();numberList.add("11129812340930034");numberList.add("10120810340930632");numberList.add("2202981234

5、0930034");numberList.add("32620810340930632");}publicvoidhandleRequest(Stringnumber){if(numberList.contains(number))System.out.println("该人在北京居住");else{System.out.println("该人不在北京居住");if(handler!=null)handler.handleRequest(number);}}publicvoidsetNextHandler(Handlerhandler){this.

6、handler=handler;}}2011-11-297模式的结构的描述与使用2.具体处理者(ConcreteHandler)_2:Shanghai.javaimportjava.util.*;publicclassShanghaiimplementsHandler{privateHandlerhandler;privateArrayListnumberList;Shanghai(){numberList=newArrayList();numberList.add("34529812340930034");numb

7、erList.add("98720810340430632");numberList.add("36529812340930034");numberList.add("77720810340930632");}publicvoidhandleRequest(Stringnumber){if(numberList.contains(number))System.out.println("该人在上海居住");else{System.out.println("该人不在上海居住");if(handler!=null)handler.handleReques

8、t(number);}}publicvoidsetNextHandler(Handlerhandler){this.han

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。