一.什么是:
在现实生活中,一个事件需要经过多个对象处理是很常见的场景。
比如说员工请假,流程处理等等。用软件设计的语言来讲就是一个对象需要被多个对象去处理。
责任链设计的好处就是让代码更加优雅,降低了对象之间的耦合度,可拓展性强。
二.角色分析:
1.被处理者,也就是被处理的对象,可以当成一个request。
2.抽象处理者(Handler):定义一个处理请求的接口,包含抽象处理方法和一个后继连接(或者责任链对象,因为我得到了责任链就相当于知道了后继处理者对吧)。
3.具体处理者(Concrete Handler):实现抽象处理者的处理方法,判断能否处理本次请求,如果可以处理请求则处理,否则将该请求转给它的后继者,或者直接return。
4.责任链对象(可省)
5.客户类(Client):创建处理链,并向链头的具体处理者对象提交请求,它不关心处理细节和请求的传递过程,只得到最终的结果。
23种设计模式——责任链模式
最新推荐文章于 2024-05-28 19:30:00 发布