使多个对象都有机会处理请求,沿着这条链传递请求,直到有对象处理它为止。
举个栗子,请假时提交申请,会先经过 HR 审核,再到项目负责人审核:
1.创建 Manager 抽象类,维护一个“上级”的变量,和抽象方法 Handle,即“处理请假申请”;
2.创建 ProjectManager 和 HRManager, 继承 Manager,方法 Handle 中根据自己的权限判断由自己处理还是“上级”处理。
注:调用时应从最低权限的审批者开始调用。
使多个对象都有机会处理请求,沿着这条链传递请求,直到有对象处理它为止。
举个栗子,请假时提交申请,会先经过 HR 审核,再到项目负责人审核:
1.创建 Manager 抽象类,维护一个“上级”的变量,和抽象方法 Handle,即“处理请假申请”;
2.创建 ProjectManager 和 HRManager, 继承 Manager,方法 Handle 中根据自己的权限判断由自己处理还是“上级”处理。
注:调用时应从最低权限的审批者开始调用。