最近学习到设计模式,现总结个人学习委派模式内容。
上一篇:Java设计模式-单列模式
定义
两个对象参与处理同一个请求,接受请求的对象将请求委托给另一个对象来处理。委派/委托模式更关心执行的结果。委派模式不是23种设计模式之一,但它也是常用的设计模式,它是静态代理和策略模式一种特殊的组合。
优缺点
优点
只关心结果,不关心过程【不关心是谁实现的这个功能,只关心最终有这个功能即可】。
简单,只是通过对象中转业务,
缺点
需要持有被委托者的对象。
实现
代码
/**
* 委派模式接口
* @author cc百川
*
*/
public interface IExector {
void execute();
}
//执行器B
class ExecuteB implements IExector{
@Override
public void execute() {
System.out.println("员工B执行中");
}
}
//执行器A
class ExecuteA implements IExector{
@Override
public void execute() {
System.out.println("员工A执行中");
}
}
/**
* 大家都需要干活,但是我是领导,我干活就是安排任务即可
* @author cc百川
*
*/
public class Dispatcher implements IExector {
IExector executer ;
public Dispatcher(IExector executer) {
this.executer = executer;
}
@Override
public void execute() {//拿到委派对象,让该对象执行它的业务逻辑,
String name = executer.getClass().getName();
name = name.substring(name.lastIndexOf(".")+1);
System.out.println("安排"+name+"干活");
this.executer.execute();
}
}
测试
日常对委托模式,常用语中介机构,大家都可以买房子,但是术业有专攻,委托给专业的人买房,结果是买到房,不关心买卖过程,只关心买到房,住进去。
以上仅为个人学习,如果错误望指出,谢谢。
版权声明:本文为ljcc122原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。