责任链模式(Chain of Responsibility)

意图

使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。

将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。

适用性

在以下条件下使用 Responsibility 链:

参与者

效果

Responsibility链有下列优点和缺点(liabilities):

示例一:请假条的审批过程

公司里面,请假条的审批过程:

1565925979863

示例代码:

1565934690848

示例二:折扣审批流程

在购置房产的社会,购房者会想要一定的折扣,但是根据买的量级的不同,享受的折扣也是不一样的。

1565934737067