当前位置: 首页 > 图灵资讯 > 技术篇> 设计模式——职责链模式

设计模式——职责链模式

来源:图灵教育
时间:2023-05-29 13:55:01

明确概念

责任链模式为请求创建了一个接收对象链。该模式提供了一种类型的请求,以解耦请求的发送者和接收者。这种类型的设计模式是一种行为模式。在这种模式下,通常每个接收者都包含对另一个接收者的参考。如果一个对象不能处理该请求,它将向下一个接收者传递相同的请求,等等。

主要解决方案:责任链上的处理器负责处理请求。客户只需将请求发送到责任链,无需关注请求的处理细节和请求的传递。因此,责任链解耦了请求的发送者和请求的处理者。

优点

1、降低耦合度。它解耦了要求的发送者和接收者。

2、简化对象。使对象不需要知道链的结构。

3、增强对象分配责任的灵活性。允许动态增加或删除责任,通过改变链中的成员或调动他们的顺序。

4、增加新的请求处理类别非常方便。

缺点

1、不能保证必须接受请求。

2、系统性能会受到一定程度的影响,代码调试不方便,可能导致循环调用。

3、由于除错,在操作过程中观察特征可能不容易。

使用场景

1、有多个对象可以处理相同的请求,具体的对象由操作时间自动确定。

2、在不明确指定接收人的情况下,向多个对象中的一个提交请求。

3、一组对象处理请求可以动态指定。