设计模式系列--委派模式
Posted TC 谈
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式系列--委派模式相关的知识,希望对你有一定的参考价值。
定义
委派模式就是负责任务的调用和分配,跟 很像,可以看作是一种特殊情况下的静态代理的全权代理,但是代理模式注重过程,而委派模式注重结果。
实现方式
一般在公司,老板有什么想法,首先是和他手下的管理人员沟通,管理人员将老板的想法落实后,将任务拆解派发给下面的员工。
IEmployee 员工接口
public interface IEmployee {
void doThing(String command);
}
EmployeeA 公司后台开发工程师
public class EmployeeA implements IEmployee {
@Override
public void doThing(String command) {
System.out.println("JAVA工程师,"+"进行"+command+"优化");
}
}
EmployeeB 公司前端开发工程师
public class EmployeeB implements IEmployee {
@Override
public void doThing(String command) {
System.out.println("H5工程师,"+"进行"+command+"优化");
}
}
Leader 直接负责人
import java.util.HashMap;
import java.util.Map;
public class Leader {
private Map<String, IEmployee> leadEmployees = new HashMap<>();
public Leader() {
leadEmployees.put("服务器", new EmployeeA());
leadEmployees.put("界面", new EmployeeB());
}
public void command(String command) {
leadEmployees.get(command).doThing(command);
}
}
Boss 老板
public class Boss {
private Leader leader;
public Boss() {
leader = new Leader();
}
public void command(String command) {
leader.command(command);
}
}
Test测试
public class Test {
public static void main(String[] args) {
Boss boss = new Boss();
boss.command("服务器");
}
}
委派模式在Spring 中使用也很多,如BeanDefinitionParserDelegate 和 Dispatchservlet等等
以上是关于设计模式系列--委派模式的主要内容,如果未能解决你的问题,请参考以下文章