说明:使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系,
将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理他为止。
需求:请假审批
解决方式:
a. 定义一个处理者抽象类,声明处理方法,定义一个处理者类,定义设置下个处理者的方法;
b. 分别定义处理者实现类、处理者实现类2,定义处理方法(判断是否能处理,如果不能,给下个处理者执行);
c. 客户端分别实例化处理者,设置处理者的关系,执行处理方法。
需求变更:添加一个审批领导;
解决方式:
新增处理者实现类,调整处理方法里面的判断条件
类图: