读书人

【备忘】责任链形式cor(chain of resp

发布时间: 2012-10-06 17:34:01 作者: rapoo

【备忘】责任链模式cor(chain of responsibility)

public abstract class Handler {      protected Handler successor;      protected String name;        public String getName() {          return name;      }        //处理请求,由子类完成       public abstract void handleRequest(String request);        //设置下一个处理请求的人       public void setNextHandler(Handler successor) {          this.successor = successor;      }  }  
??? ? ? 事实上,跟数据结构里的链表差不多。?? ? ? 然后每个继承Handle的类分别实现handleRequest方法。
public class HandleA extends Handle {public void handRequest(Request req){if(req.condition1){doSomething();}else{        successor.handleRequest();}}}
?? ? ? ??最后在main方法中对每个类的对象设置后继结点即可。Handle h1 = new HandleA();
Handle h2 = new HandleB();Handle h3 = new HandleC();h1.setNextHandler(h2);h2.setNextHandler(h3);String req = "XXXXXXX";h1.handleRequest(request);
?

读书人网 >网络基础

热点推荐