责任链模式
[toc]
类型
行为模式
简介
为一个请求创建一个接受者对象链
意图
解耦 发送者与接收者,每一个接收者持有下一个接收者,请求按链的顺序传递
使用场景
多个对象处理同一请求(具体由哪一个对象处理,运行时动态判断);
关键代码
Handler内聚合自己,HandlerRequest判断请求是否合适,核实执行当前处理,不合适传递到set自身的handler
理解
一般,所有handler有统一的父类或实现接口,如果是存在统一的抽象父类,可以将通用的过滤规则放在抽象类中进行判断(这样避免散弹式的修改); 请求终止,可由handler自行选择是否继续传递(不传递,需要覆盖传递规则); 责任链传递返回数据,感觉以入参引用传递会好一点,待尝试。
网友评论