知识卡片

责任链模式的定义与传递判断机制

普通读书笔记卡 · 1988.a

内容

责任链模式让多个对象都有机会处理同一请求,避免请求发送者和接收者耦合——处理者串成链, 请求沿链传递直到被处理。核心机制:handleMessage方法判断当前请求级别是否等于自己能处理 的级别,相等则处理,不相等则转发给nextHandler或兜底。发散:这把”该不该我处理”和”该怎么 处理”拆成两步,每个处理者不需要知道链上还有谁、链有多长。

参考来源

- 位置:《设计模式之禅(第2版)》第16章《责任链模式》(源文件:_epub-src/text/part0072.html、part0073.html) - 结论依据:原文给出责任链模式定义并展示Handler抽象类的handleMessage方法:判断women.getType()是否等于this.level,相等调用response,不相等则检查nextHandler是否存在并转发或兜底处理。 - 原始内容:使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止……如果相同则调用基本方法,做出反馈;如果不相等,则传递到下一个环节。