Skip to content

Latest commit

 

History

History
34 lines (23 loc) · 855 Bytes

File metadata and controls

34 lines (23 loc) · 855 Bytes

责任链模式 (Chain of Responsibility Pattern)

定义

使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。

类图

// 类图内容

适用场景

  • 有多个对象可以处理同一个请求,具体哪个对象处理该请求由运行时刻自动确定
  • 在不明确指定接收者的情况下,向多个对象中的一个提交一个请求
  • 可动态指定一组对象处理请求

优缺点

优点

  • 降低耦合度
  • 增强了给对象指派职责的灵活性
  • 简化了对象

缺点

  • 不能保证请求一定被接收
  • 系统性能将受到一定影响,而且在进行代码调试时不太方便

代码实现

// 示例代码