• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

软件测试 | 设计模式——代理设计

武飞扬头像
霍格沃兹_测试
帮助1

更多学习资料戳!!!

代理设计也就是Java开发中使用较多的一种设计模式,所谓的代理设计就是指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其他相关业务的处理,就好像在生活中经常使用的代理上网一样,客户通过网络代理连接网络,由代理服务器完成用户权限和访问限制等与上网操作相关的操作,如图所示。

不管是代理操作还是真实的操作,其共同的目的就是上网,所以用户关心的只是如何上网,至于具体是如何操作的用户并不关心,所以可以得出如图6-18所示的分析结果。

学新通

图6-18可以发现,只需要定义一个上网的接口,代理主题和真实主题都同时实现此接口,然后再由代理操作真实主题即可,以上的要求可以形成如下代码。

范例:代理操作

    interface  Network{                                             //定义Network接口
        public  void browse() ;                                  //定义浏览的抽象方法
   }
     class Real implements Network{                                 //真实的上网操作
         public  void  browse(){                                  //覆写抽象方法
              System.out.printIn("上网浏览信息")  ;
      }
    }
      class Proxy implements Network {                               //代理上网
           private Network network  ;                  
           public Proxy(Network network){                          //设置代理的真实操作
           this.network = network ;                                  //设置代理的子类
  }
     public  void  check(){                                        //与具体上网相关的操作
          System.out.printIn("检查用户是否合法");
      }
      public void browse(){
           this.check();                                              //可以同时调用多个与具体业务相关的操作
           this.network.browse();                                     //调用真实上网操作
    }
  }
   public class ProxyDemo {
       public  static void main(string args []){
          Network net = null ;                 //定义接口对象
          net = new Proxy(new Real());     //实例化代理,同时传入代理的真实操作
          net.browse()  ;                      //客户只关心上网浏览一个功能
     }
  }      

程序运行结果:

检查用户是否合法

上网浏览信息

以上程序的执行流程如图所示

学新通

真实主题完成的只是上网的最基本功能,而代理主题要做比真实主题更多的业务相关的操作。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgbaccf
系列文章
更多 icon
同类精品
更多 icon
继续加载