Java设计模式-委派模式

委派模式-delegate

委派模式
特点:
1、类似中介的功能(委托机制)
2、持有被委托人的引用
3、不关心过程,只关心结果
最重要的特点:干活是我的,功劳是你的
不关系过程,只关心结果

Java设计模式-委派模式_第1张图片
image.png
public interface Employee {//员工接口

    public void doing();
}
public class Programmer implements Employee{//程序员
    @Override
    public void doing() {
        System.out.println("程序员码代码");
    }

}

public class Manager implements Employee{//项目经理

    private Programmer programmer;

    Manager(Programmer programmer) {
        this.programmer=programmer;
    }

    @Override
    public void doing() {
        programmer.doing();
    }
}
public class Test {
    public static void main(String[] args) {
        Manager manager=new Manager(new Programmer());
        manager.doing();
        //看似是项目经理在做事情
        //其实是叫程序员做的
        //功劳是项目经理的,干活是程序员
    }
}

结果:

Java设计模式-委派模式_第2张图片
result.png

结语

总结一下,给委托人写一个构造方法,来接受受托人,调用受托人的doing方法。
干活是我的,功劳是你的。只关心结果

你可能感兴趣的:(Java设计模式-委派模式)