zoukankan      html  css  js  c++  java
  • java 设计模式 代理模式 静态代理

    代理模式:
    使用环境无法直接使用对象A(委托对象),可以使用对象B(代理对象)调用对象A已达到直接调用对象A的效果,就成为代理模式。

    其中A为委托对象,B为代理对象。

    静态代理的优缺点:

    优点

    1、代码只管,可以清楚理解委托雷以及代理类。

    2、在编译期加入,提前就指定好了委托类,代理类,效率高。

    缺点

    1、静态代理很麻烦,需要大量的代理类,不易于代码维护等

         当我们有多个目标对象需要代理时,我就需要建立多个代理类,改变原有的代码,改的多了就很有可能出问题,必须要重新测试。

    2、重复的代码会出现在各个角落里,代码过于冗余

    3、在编译期加入,系统的灵活性差,不易于灵活的修改

    伪码如下:

    /**委托类*/

    Class A{

      public void method1(){

        system.out.println("from A method");

      };

    }

    /**代理类*/

    Class B{

      A a;

      public B(A a){

        this.a = a;

      }

      void method1(){

        if(null != a){

          a.method1();

        }

      };

    }

    /**********/

    调用过程

    main(){

      B b = new B(new A());

      b.method1();

    }

    /****************************************************如有错误,忘雅正,多谢 !*************************************************************/

  • 相关阅读:
    Pycharm 中的翻译工具
    服务器响应慢问题
    将博客搬至CSDN
    【索引】索引的介绍与优化
    【Java杂记】Equals 和 hashCode
    【Java】JVM(六)虚拟机字节码执行引擎
    【Java】JVM(五)、虚拟机类加载机制
    【Java】JVM(四)、虚拟机参数配置
    【Java】JVM(三)、Java垃圾收集器
    【Java】JVM(二)、Java垃圾收集算法
  • 原文地址:https://www.cnblogs.com/xunzhi/p/4284527.html
Copyright © 2011-2022 走看看