分为三部分:方法接口,被代理者,代理者
本例是秘书代替老板通知员工开会
方法接口:
public interface Operation {
public void opeate();
}
被代理者(实际动作发出者):
ppublic class Boss implements Operation {
@Override
public void opeate() {
System.out.println("开会");
}
}
代理者:
public class Secretary implements Operation {
private Operation proxySubject;
public Secretary(Operation operation){
this.proxySubject = operation;
}
@Override
public void opeate() {
proxySubject.opeate();
}
}
运行:
public class Test {
public static void main(String[] args){
Boss boss = new Boss();
Secretary secretary = new Secretary(boss);
secretary.opeate();
}
}
结果:
开会
优点:
代理者可以灵活替换被代理者
代理者可以添加自己的独有行为,比如说加钱、附带赠品啊,科科。