Chain of Responsibility(责任链)模式

介绍

有时候我们去某公司办事,首先我们去找前台人员,然后前台人员告诉我们不归他们管,让我们去找营业窗口,他们又说不归他们管,又让我们去找售后部门。就这样,我们被不断地踢给下一个部门,直到找到合适的部门。这就是“推卸责任”。
有时候我们反而需要“推卸责任”。

加入我们将多个对象组成一条职责链,然后按照它们在职责链上的顺序一个一个的找出到底谁才能处理。

实现思路

每个部门推卸部门,除了最后一个。这样的话就明确了。首先在各个部门类里判断自己是否能解决,解决不了就推给下一个部门,若都解决不了(一般不应该出现这种情况)就抛出异常。
所以我们需要:
一个问题类。
一条职责链。

发布了75 篇原创文章 · 获赞 14 · 访问量 950

猜你喜欢

转载自blog.csdn.net/qq_41148461/article/details/102886171