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();

}

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

posted @ 2015-02-10 18:07  逊志  阅读(193)  评论(0编辑  收藏  举报