• 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.应用场景:

    代理服务器

     --------------------------------------------------------------------

    PS: 欢迎关注公众号"Devin说",会不定期更新Java相关技术知识。

    --------------------------------------------------------------------

  • 相关阅读:
    trie树
    单调队列
    网络流24题——试题库问题
    费用流的简单应用
    Manacher算法
    KMP算法
    网络流之最小费用最大流
    网络流之二分图匹配【转】
    网络流之最大流
    矩阵快速幂优化菲波那切数列
  • 原文地址:https://www.cnblogs.com/devinzhang/p/2302353.html
Copyright © 2020-2023  润新知