职责链模式
- 解耦请求发送者与接收者
- 请求可以直接传给职责链上任意一个节点,并不一定要从链条的首部开始(按照一定规定)
- 请求具体被哪个接收者处理不需要知道
- 接收者的职责链条具体是怎样的不需要知道
- 接收者职责链可以按照需求动态改变,增强了灵活性
- 屏蔽了处理过程,使得排错难
- 可能请求不一定被处理,也可能陷入如循环处理
结构图
Handler子类具体实现handleRequest方法
handleRequest(Request request){
if(职责范围内)
处理请求
else
h.handleRequest(request)交给上级处理
}