行为型设计模式-责任链 Chain Of Responsibility
date
Apr 20, 2021
slug
design-pattern-chain-of-responsibility
status
Published
tags
设计模式
summary
type
Page
简介
使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。
角色
- Handler 接口
定义处理方法签名,设置nextHandler方法
- Concrete Handler 具体类
实现各自handler逻辑
- BaseHandler 封装一层handler,可有可无
类图
如图,在 client 中,将 handler 一个个串起来,每个 handler 处理完后可决定是否向后传递。
![notion image](https://www.notion.so/image/https%3A%2F%2Fdeb-gmi.oss-cn-beijing.aliyuncs.com%2Fimg%2F20210409000504.png?table=block&id=db69ce68-81f5-47d6-be10-dddb98f40862&cache=v2)
代码
output: