1 /**
2 * 静态代理:
3 * 要实现相同接口
4 * 必须存在的俩个角色:
5 * 真实角色
6 * 代理角色
7 * 定义:
8 * 对某一个目标对象提供它的代理对象,并且由代理对象控制对原对象的引用。
9 */
10 public class JingTaiDaiLi {
11 public static void main(String[] args) {
12 new HunQingGongSi(new People()).jieHun();
13 }
14 }
15
16 //公共接口
17 interface JieKou{
18 void jieHun();
19 }
20
21 //婚庆公司(代理角色)
22 class HunQingGongSi implements JieKou{
23 //代理的真实角色
24 private People man;
25 public HunQingGongSi(People people) {
26 this.man = people;
27 }
28 @Override
29 public void jieHun() {
30 man.jieHun();
31 System.out.println("我婚庆公司可以代理哟!");
32 }
33 }
34
35 //结婚的人(真实角色)
36 class People implements JieKou{
37 @Override
38 public void jieHun() {
39 System.out.println("是人都要结婚");
40 }
41 }