总第62篇
我们在工作过程中有时候会请假休息,当我们填写一张请假单后,在这张假单签字的人,是一级接一级地推进,比如直属领导->部门总监->CEO->行政人员这样一个流程,处理这张假单的过程就是一个责任的传递,他们构成了一个责任的链条,这就是责任链模式的核心思想。本篇将详细梳理责任链模式。
1.责任链模式的概念
责任链模式也称职责模式,它是一种对象行为型模式。它定义为:使多个对象都有机会处理请求,从而避免请求的发送者和接收者耦合在一起,将这些处理请求的对象连接成一条链,并沿着这条链传递请求,直到有对象处理它为止。
责任链模式的类图关系如下图所示:
![v2-d578fd6092567f90974fd86eca284f7a_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/6f3900433db0541fc5fc5840343a935d.png)
责任链模式将请求的发送者和接受者解耦了。客户端不需要知道请求处理者的明确信息和处理的具体逻辑,甚至不需要知道链的结构,它只需要将请求进行发送即可,这大大提高了系统的灵活性,其优点主要表现为以下几个方面:
- 降低了系统耦合度。它将请求的发送者与接收者进行了解耦;
- 简化了对象。它使得对象不需要知道链的结构;
- 增强了给对象指派职责的灵活性。通过改变链内
对于该模式的缺点