行为型设计模式-责任链 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
 

代码

 
output:
 

© 菜皮 2020 - 2024