设计模式之委派模式

it2024-08-04  70

委派模式不是23种设计模式之一,但它也是常用的设计模式,它是静态代理和策略模式一种特殊的组合。委派者要持有被委派者的引用 委派的核心:就是分发、调度、派遣。在SPring源码中也常常出现委派模式。

1.代码实现

public interface IEmployee { public void hardwork(String work); } public class Employee_HR implements IEmployee { public void hardwork(String work) { System.out.println("我是HR,我负责招聘"); } } public class Employee_Salesman implements IEmployee{ public void hardwork(String work) { System.out.println("我是销售,我负责销售产品"); } } public class Leader implements IEmployee { private Map<String,IEmployee> workmap = new HashMap<String,IEmployee>(); public Leader() { workmap.put("招聘",new Employee_HR()); workmap.put("销售",new Employee_Salesman()); } public void hardwork(String work) { IEmployee employee = workmap.get(work); if(employee!=null) { employee.hardwork(work); }else { System.out.println("没有该岗位"); } } } public class Boss { public static void main(String[] args) { Leader leader = new Leader(); leader.hardwork("招聘"); } }

我们来看看类的层级关系

类的层级关系很简单,继承公共的接口类,有上下级关系,Boss类负责发命令,leader类差遣调度,对外隐藏内部实现,其他的类负责做具体的事。这就是委派类的特点。

最新回复(0)