千家信息网

Java编程责任链模式的模板代码分享

发表于:2024-12-03 作者:千家信息网编辑
千家信息网最后更新 2024年12月03日,本篇内容介绍了"Java编程责任链模式的模板代码分享"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!/
千家信息网最后更新 2024年12月03日Java编程责任链模式的模板代码分享

本篇内容介绍了"Java编程责任链模式的模板代码分享"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

//抽象处理者 public abstract class Handler{  private Handler nextHandler;  //每个处理者都必须对请求做出处理  public final Response handleMessage(Request request){    Response response = null;    //判断是否自己的处理级别    if(this.getHandlerLevel().equals(request.getRequestLevel())){     response = this.echo(request);    }else{     //判断是否有下一个处理者     if(this.nextHandler != null){      response = this.nextHandler.handleMessage(request);     }else{      //没有适当的处理者    }   }   return response;  }  //设置下一个处理者是谁  public void setNext(Handler _handler){    this.nextHandler = _handler;  }   //每个处理者都有一个处理级别  protected abstract Level getHandlerLevel();  //每个处理者都必须实现处理任务  protected abstract Response echo(Request request); }   //具体处理者1 publlic class ConcreteHandler1 extends Handler{   //定义自己的处理逻辑   protected Response echo(Request request){    //完成处理逻辑    return null;   }   //设置自己的处理级别   protected Level getHandlerLevel(){    //设置自己的处理级别    return null;   } }  //具体处理者2 publlic class ConcreteHandler2 extends Handler{   //定义自己的处理逻辑   protected Response echo(Request request){    //完成处理逻辑    return null;   }   //设置自己的处理级别   protected Level getHandlerLevel(){    //设置自己的处理级别    return null;   } }   //具体处理者3 publlic class ConcreteHandler3 extends Handler{   //定义自己的处理逻辑   protected Response echo(Request request){    //完成处理逻辑    return null;   }   //设置自己的处理级别   protected Level getHandlerLevel(){    //设置自己的处理级别    return null;   } }   //模式中有关框架的代码 public class Level{  //定义一个请求和处理等级 }  public class Request{  //请求的等级  public Level getRequestLevel(){   return null;  } } public class Response{  //处理返回者的数据 }  //场景类 public class Client{  public static void main(String[] args){    //声明所有的处理节点    Handler handler1 = new ConcreteHandler1();    Handler handler2 = new ConcreteHandler2();    Handler handler2 = new ConcreteHandler3();    //设置链中的阶段顺序1-->2-->3    handler1.setNext(handler2);    handler2.setNext(handler3);    //提交请求    Response response = handler.handleMessage(new Request());  } }

"Java编程责任链模式的模板代码分享"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0