java中委派模式

委派模式

1.类似于中介的功能(委派机制);

2.持有被we委托人的引用

3.不关心过程,只关心结果

要和代理模式区分开

一般来说,两个角色,受托人,委托人(社会上是平等关系)

如:公司里面:项目经理,普通员工(法律上平等的,工作的关系,各自的职责会不一样)

干活是我的,功劳是你的(最重要的特点,关系的是执行的结果)

项目经理(委托人):主要职责是安排任务

普通员工(受托人):执行任务

主要mu目的隐藏实现的逻辑

IOC容器中,有一个Register的东西(为了告诉我们的容器,在这个类被初始化的过程中,需要做很多不同的逻辑处理,需要实现多个任务执行者,分别实现各自的功能)

定义一个执行的接口

package delegate;

public interface IExector {
	//普通员工执行任务
	//在公司中,员工给执行任务
	//规定在一周之内必须完成
	void doing();
}

实现操作的方法(受托人)

package com.gupaoedu.vip.delegate;

//想法,用代码来描述这种想法?
//所以,写得比较简单
public class ExectorA implements IExector {

	@Override
	public void doing() {
		System.out.println("员工A开始执行任务");
	}
	
}
package com.gupaoedu.vip.delegate;

public class ExectorB implements IExector{

	@Override
	public void doing() {
		System.out.println("员工B开始执行任务");
	}

}

委托人

package com.gupaoedu.vip.delegate;

public class Dispatcher implements IExector{
	IExector exector;
	
	Dispatcher(IExector exector){
		this.exector = exector;
	}
	
	
	//项目经理,虽然也有执行方法
	//但是他的工作职责是不一样的
	public void doing() {
		this.exector.doing();
	}

}

测试

package com.gupaoedu.vip.delegate;

public class DispatcherTest {

	
	public static void main(String[] args) {
		Dispatcher dispatcher = new Dispatcher(new ExectorA());
		//看上去好像是我们的项目经理在干活
		//但实际干活的人是普通员工
		//这就是典型,干活是我的,功劳是你的
		dispatcher.doing();
	}
	
}

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值