设计模式-责任链模式

前言:我们今天接触到的设计模式称为 -责任链模式,责任链模式的名称其实已经比较形象的描述的自身的含义。就好比现实生活中的上下级责任一样,普通职员不匹配的任务,向上递交组长,组长如果也不能完成,就继续向上递交,如果一直没有可以处理的,那就作罢。

     使用场景: 这个设计模式在日常开发中还是挺有用处的,类似分配任务的这种场景其实都可以向责任链模式上面靠拢。

     思路要点:一是把握住责任分发,二是要通过 setNext把整条“链”串起来

     实例如下:

     首先我们的接口如下: 接口的功能分为两部分,一是 处理,而是 指向下一个责任者

    具体的handler实现如下

testcase如下:

根据传入的n值的不同交由不同的handler处理。 有同学可能会觉得这三个还不如简单的if else。 但是当功能复杂性直接提升的时候,这种模式就可以派上大用场咯。

很简单,对吧?

原文地址:https://www.cnblogs.com/JasonShenW/p/8510322.html