java行为型设计模式——责任链模式
来源:互联网 发布:视频监控平台软件 编辑:程序博客网 时间:2024/05/17 23:56
1、理解:所谓责任连模式就是所当事件发生的时候,有人对事件进行处理;
2、处理方式:可以是先给对A处理,然后再给B处理,再给C处理,ABC处理的结果可以有关系,也可以没有关系
3、转换为代码:
2、处理方式:可以是先给对A处理,然后再给B处理,再给C处理,ABC处理的结果可以有关系,也可以没有关系
3、转换为代码:
- 首先将事件接收者都抽象出一个类,这个类的作用是①能够获得事件接收者②能够抽象事件实现方法③能够在接受事件之后去调用方法同时将事件传递给下一个事件接收者
- 事件接收者在接收事件之后重写抽象类中的方法实现具体的对事件的处理
例题如下(来自:https://www.w3cschool.cn/java/java-chain-of-responsibility-pattern.html)
//先抽象类:public abstract class Logger { protected Logger nextLogger;//下属 public void setNextLogger(Logger nextLogger) { this.nextLogger = nextLogger; } abstract protected void log(String message); public void logMessage(String message){ log(message); if(nextLogger !=null){ nextLogger.logMessage(message); } }}//再设计抽象类的子类: public class EMailLogger extends Logger{ public EMailLogger() { // TODO Auto-generated constructor stub } @Override protected void log(String message) { System.out.println("EMail::Logger: " + message); } } public class FileLogger extends Logger{ public FileLogger() { // TODO Auto-generated constructor stub } @Override protected void log(String message) { System.out.println("File::Logger: " + message); } } public class ConsoleLogger extends Logger{ public ConsoleLogger() { // TODO Auto-generated constructor stub } @Override protected void log(String message) { System.out.println("Console::Logger: " + message); } }//最后编写一个测试类查看效果:public class Main { private static Logger getChainOfLoggers(){ Logger emailLogger=new EMailLogger(); Logger fileLogger=new FileLogger(); Logger consoleLogger=new ConsoleLogger(); emailLogger.setNextLogger(fileLogger);//设置对应下属 fileLogger.setNextLogger(consoleLogger);//设置对应下属 return emailLogger; } public static void main(String[] args) { Logger loggerChain=getChainOfLoggers(); loggerChain.logMessage("第一个命令"); }}总结:就是给你一个事件,你先处理事件,然后获取下一个处理事件的人,然后让这个人来处理事件,依次循环
阅读全文
0 0
- java行为型设计模式——责任链模式
- JAVA设计模式(17) —<行为型>责任链模式(Chain of Responsibility)
- Java设计模式(行为型)之-责任链模式
- Java设计模式(17)行为型:责任链模式
- Java设计模式_(行为型)_责任链模式
- 设计模式--行为型--责任链模式
- 行为型设计模式-责任链模式
- 行为型设计模式-责任链模式
- java 设计模式-行为模式之责任链模式
- 设计模式——行为型模式之责任链模式
- Java设计模式—责任链模式
- 设计模式->行为型模式->责任链模式
- 【23种设计模式】行为型模式 > 责任链模式
- 【设计模式】—-(22)责任链模式(行为型)
- 行为型模式1——责任链模式
- 责任链模式——对象行为型模式
- 【行为型模式】责任链模式(chain of responsibility)之23种java设计模式
- Java设计模式之行为型模式(责任链模式)
- Python操作excel文件
- MATLAB删除全0行和全0列
- 同一ip绑定多个域名
- 给即将参加noip的自己和各位oier的一些提醒
- 关于tensorflow经过embedding层维度的问题。
- java行为型设计模式——责任链模式
- IDEA导入Junit4jar包
- windows的npm导致Git慢解决方案
- 二叉排序树的建立
- scrapy爬取豆瓣电影中演员合作关系制作gephi图
- Struts2学习---namespace,file模块包含,默认action
- 【智能流程自动化】德勤:自动化时代关于机器人自动化与智能自动化的行业领导者指南
- Struts2结果处理方式以及传参获得原生Http
- 【智能制造】关于德国工业4.0的简要介绍