1. 定义:
使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。
2. 类图:
3. 责任链模式解析:
每个环节只有两个选项:要么承担责任做出回应,要么向下传递请求,最终会有环节做出回应。
责任链有一缺点:调试不是很方便,特别是链条比较长,环节比较多的时候,由于才有了类似递归的方式,调试的时候逻辑可能比较复杂。
使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。
每个环节只有两个选项:要么承担责任做出回应,要么向下传递请求,最终会有环节做出回应。
责任链有一缺点:调试不是很方便,特别是链条比较长,环节比较多的时候,由于才有了类似递归的方式,调试的时候逻辑可能比较复杂。