zoukankan      html  css  js  c++  java
  • Java之代理模式 (Proxy Pattern)

    1.概念

    为其他对象提供一种代理以控制对这个对象的访问。

    2.UML图:

    3.代码:

    //抽象角色:
    public abstract class Subject
    {      
          abstract public void request();
    }
      
    //真实角色:实现了Subject的request()方法。
    public class RealSubject extends Subject
    {
          public void request()
         {
                System.out.println("From real subject.");
           }
      
    //代理角色:
    public class ProxySubject extends Subject
    {
          private RealSubject realSubject; //以真实角色作为代理角色的属性 
          public void request() //该方法封装了真实对象的request方法
         
              if( realSubject == null )
       {
                    realSubject = new RealSubject();
              }
              realSubject.request(); //此处执行真实对象的request方法 
           }
    }
      
    //客户端调用:
    Subject sub=new ProxySubject();
    Sub.request();

    4.应用场景:

    代理服务器

  • 相关阅读:
    [CF1106E] 边界有问题
    UOJ 67 新年的毒瘤
    BZOJ 1093 [ZJOI2007]最大半连通子图
    codeforces round#510
    codeforces round#509
    杂谈
    BZOJ 3007 [SDOI2012]拯救小云公主
    BZOJ 1799
    BZOJ 3329
    BZOJ 3209 花神的数论题
  • 原文地址:https://www.cnblogs.com/makeryan/p/2498293.html
Copyright © 2011-2022 走看看