责任链模式(Chain of Responsibility)
Posted stpan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了责任链模式(Chain of Responsibility)相关的知识,希望对你有一定的参考价值。
- 定义:为一个请求定义含有链状关系的接受对象,基于请求的类型,松耦合发送者和接受者之间的关系。
- 实现方式:
- 首先定义一个抽象类,包括一个公共抽象行为和决定子类链状关系的属性,然后创建一系列对象继承这个抽象类,
- 然后创建责任链关系(可线形结构、环形结构或树状结构)方法并返回顶级责任链类;
- JDK实例:java.util.logging.Logger#log();javax.servlet.Filter#doFilter();
- 项目实例:PR分级审批;
- 优点:将职责分类隔离处理,降低耦合,符合开闭原则,不需修改原有代码,新增一个责任类即可;
- 缺点:链结构遍历,性能有影响;
以上是关于责任链模式(Chain of Responsibility)的主要内容,如果未能解决你的问题,请参考以下文章
责任链模式(Chain of Responsibility)
15-责任链(Chain of Responsibility)模式Ruby实现
责任链模式(Chain of Responsibility Pattern)
责任链模式(chain of responsibility)