竹笋

注册

 

发新话题 回复该主题

你以为委派模式很神秘,其实你每天都在用 [复制链接]

1#
北京哪间医院看白癜风最好 https://jbk.39.net/yiyuanfengcai/tsyl_bjzkbdfyy/roae9q0/

本文节选自《设计模式就该这样学》

1 使用委派模式模拟任务分配场景

我们用代码来模拟老板给员工分配任务的业务场景。首先创建IEmploy员工接口。

publicintrfacIEmploy{voiddoing(Stringtask);}

创建员工EmployA类。

publicclassEmployAimplmntsIEmploy{protctdStringgoodAt="编程";publicvoiddoing(Stringtask){Systm.out.println("我是员工A,我擅长"+goodAt+",现在开始做"+task+"工作");}}

创建员工EmployB类。

publicclassEmployBimplmntsIEmploy{protctdStringgoodAt="平面设计";publicvoiddoing(Stringtask){Systm.out.println("我是员工B,我擅长"+goodAt+",现在开始做"+task+"工作");}}

创建项目经理Ladr类。

publicclassLadrimplmntsIEmploy{privatMapString,IEmploymploy=nwHashMapString,IEmploy();publicLadr(){mploy.put("爬虫",nwEmployA());mploy.put("海报图",nwEmployB());}publicvoiddoing(Stringtask){if(!mploy.containsKy(task)){Systm.out.println("这个任务"+task+"超出我的能力范围");turn;}mploy.gt(task).doing(task);}}

然后创建Boss类下达命令。

publicclassBoss{publicvoid

分享 转发
TOP
发新话题 回复该主题