责任链模式
责任链模式就是将请求和处理分开了, 定义一个责任链, 请求不需要关心是怎样处理的, 请求沿着责任链传递, 直到找到能处理该请求的handler为止。
先看看AbstractRequest
public class Client {public static void main(String[] args) {// 先定义两个RequestRequest normalRequest = new NormalRequest(Type.NORMAL, "normal request");Request specialRequest = new SpecialRequest(Type.SPECIAL,"special request");// 定义两个HandlerHandler normalHandler = new NormalHandler();Handler specialHandler = new SpecialHandler();// 指定责任链的顺序normalHandler.setNextHandler(specialHandler);// 处理RequestnormalHandler.handle(normalRequest);normalHandler.handle(specialRequest);System.out.println();// 重新设置责任链顺序normalHandler.setNextHandler(null);specialHandler.setNextHandler(normalHandler);// 再处理specialHandler.handle(normalRequest);specialHandler.handle(specialRequest);}}