7. /**
8. *示意处理请求的方法,虽然这个示意方法是没有传入参数的
9. *但实际是可以传入参数的,根据具体需要来选择是否传递参数
10. */
11. publicabstractvoidhandleRequest();
12. /**
13. *取值方法
14. */
15. publicHandlergetSuccessor(){
16. returnsuccessor;
17. }
18. /**
19. *赋值方法,设置后继的责任对象
20. */
21. publicvoidsetSuccessor(Handlersuccessor){
22. this.successor=successor;
23. }
24.
25. }
具体处理者角色
1. publicclassConcreteHandlerextendsHandler{
2. /**
3. *处理方法,调用此方法处理请求
4. */
5. @Override
6. publicvoidhandleRequest(){
7. /**
8. *判断是否有后继的责任对象
9. *如果有,就转发请求给后继的责任对象
10. *如果没有,则处理请求
11. */
12. if(getSuccessor()!=null)
13. {
14. System.out.println("放过请求");
15. getSuccessor().handleRequest();
16. }else
17. {
18. System.out.println("处理请求");
19. }
评论0
最新资源