Java多线程之静态代理

 1 package org.study2.javabase.ThreadsDemo.staticproxy;
 2 
 3 /**
 4  * @Date:2018-09-18 静态代理 设计模式
 5  * 1、真实角色
 6  * 2、代理角色:持有真实角色的引用
 7  * 3、二者实现相同的接口
 8  * 举例说明:Couple类和Company类都实现了Marry,通过Company类实际操作Couple类的marry方法。
 9  */
10 public class StaticProxy {
11     public static void main(String args[]) {
12         Couple couple = new Couple();
13         Company company = new Company(couple);
14         company.marry();
15     }
16 }
17 
18 interface Marry {
19     public abstract void marry();
20 }
21 
22 class Couple implements Marry {
23 
24     @Override
25     public void marry() {
26         System.out.println("我们结婚啦!");
27     }
28 }
29 
30 class Company implements Marry {
31     private Couple couple;
32 
33     public Company() {
34 
35     }
36 
37     public Company(Couple couple) {
38         this.couple = couple;
39     }
40 
41     @Override
42     public void marry() {
43         System.out.println("婚庆公司准备中。。。");
44         couple.marry();
45         System.out.println("婚礼结束 ,婚庆公司收摊。。。");
46     }
47 }
原文地址:https://www.cnblogs.com/gongxr/p/9669248.html