介绍
有时候我们去某公司办事,首先我们去找前台人员,然后前台人员告诉我们不归他们管,让我们去找营业窗口,他们又说不归他们管,又让我们去找售后部门。就这样,我们被不断地踢给下一个部门,直到找到合适的部门。这就是“推卸责任”。
有时候我们反而需要“推卸责任”。
加入我们将多个对象组成一条职责链,然后按照它们在职责链上的顺序一个一个的找出到底谁才能处理。
实现思路
每个部门推卸部门,除了最后一个。这样的话就明确了。首先在各个部门类里判断自己是否能解决,解决不了就推给下一个部门,若都解决不了(一般不应该出现这种情况)就抛出异常。
所以我们需要:
一个问题类。
一条职责链。