一、概述
代理模式:为另一个对象提供一个替身或者占位符以控制对这个对象的访问
二、场景
某天,老板要开个会,需要召集员工,开会,整理会议记录,这时,老板叫来秘书,由秘书负责召集员工和整理会议记录,而老板则只负责开会。
三、代码
1.员工接口类
public interface People {
void work();
}
2.老板类
public class Boss implements People {
@Override
public void work() {
System.out.println("老板开会");
}
}
3.秘书类
public class MiShu implements People {
People people;
public MiShu(People people) {
this.people = people;
}
@Override
public void work() {
System.out.println("召集员工");
people.work();
System.out.println("整理会议信息");
}
}
4.测试类
public class Test {
public static void main(String[] args) {
People boss = new Boss();
People mishu = new MiShu(boss);
mishu.work();
}
}