静态代理

静态代理

1.静态代理模式总结
// 静态代理模式总结
// 真实对象和代理对象都要实现同一个接口
// 代理对象要代理真实角色

// 好处
// 1.代理对象可以做很多真实对象做不了的事情
// 真实对象专注自己的事情
public class StaticProxy {
   public static void main(String[] args) {
       new Thread(()-> System.out.println("爱你")).start();
       WeedingCompany weedingCompany = new WeedingCompany(new You());
       weedingCompany.happyMarray();
  }
}

interface Marray{

   void happyMarray();
}

// 真实角色
class You implements Marray{
   @Override
   public void happyMarray() {
       System.out.println("结婚,开心");
  }
}

// 代理角色,帮助作用
class WeedingCompany implements Marray{
   // 代理----》真实角色
   private Marray target;

   // 相当于构造函数 用来接受上面new You()的实例
   public WeedingCompany(Marray target) {
       this.target = target;
  }


   @Override
   public void happyMarray() {
       before();
       this.target.happyMarray(); // 真实对象
       after();
  }

   public void  before(){
       System.out.println("布置现场");
  }
   public void  after(){
       System.out.println("收尾款");
  }
}
 
posted @ 2023-08-24 15:52  Y~~~  阅读(59)  评论(0)    收藏  举报