设计模式快速学习(八)委派模式

委派模式不是GOF23中的一员,但是在Spring中经常用到该模式,比如Registry等功能。

以现实生活中的老板委派员工干活来举例,比如说政府要求企业改革,老板将改革的任务发放给员工,老板出钱员工出力,但是功劳还是算在老板头上的,没有人关心这一任务的过程,只关心这个任务的结果,这种模式就是委派模式。

Task.java

一个普通的任务接口。

public interface Task {

    void doing();
}
Boss.java

Boss是一个委派任务的对象,它将任务委派下去。

public class Boss implements Task{

    private Task task;

    Boss(Task task){
        this.task = task;
    }
    @Override
    public void doing() {
        System.out.println("我是BOSS,我要开始委派人做任务拉,我不管你做任务的过程(是否加班),我只要这个任务的结果");
        task.doing();
    }
}
WorkerA.java

员工A。

public class WorkerA implements Task{
    @Override
    public void doing() {
        System.out.println("我是work-A,老板委派我做任务,活其实是我干的,但是功劳是老板的");
    }
}
WorkerB.java

员工B.

public class WorkerB implements Task{
    @Override
    public void doing() {
        System.out.println("我是work-B,老板委派我做任务,活其实是我干的,功劳是老板的");
    }
}

你可能感兴趣的:(设计模式快速学习(八)委派模式)