设计模式一静态代理模式

Posted loveer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式一静态代理模式相关的知识,希望对你有一定的参考价值。

静态代理模式

 

  间接地访问该对象,从而限制、增强或修改该对象的一些特性。

 

       代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。

静态代理

  是由程序员创建或特定工具自动生成源代码,在对其编译。

  在程序员运行之前,代理类.class文件就已经被创建了。

动态代理

  是在程序运行时通过反射机制动态创建的。

静态代理总结:

优点:可以做到在符合开闭原则的情况下对目标对象进行功能扩展。

缺点:我们得为每一个服务都得创建代理类,工作量太大,不易管理。

   同时接口一旦发生改变,代理类也得相应修改。         

 1 public class ProxyDemo 
 2     public static void main(String[] args) 
 3         new proxy().myshop();
 4     
 5 
 6 
 7 interface a 
 8     void shopping();
 9 
10 
11 class b implements a 
12 
13     @Override
14     public void shopping() 
15         System.out.println("买零食");
16     
17 
18 
19 class proxy 
20     private a a = new b();
21 
22     public void myshop() 
23         before();
24         a.shopping();
25         after();
26     
27 
28     private void before() 
29         System.out.println("拿钱");
30     
31 
32     private void after() 
33         System.out.println("回家啊");
34     
35 

 

    

以上是关于设计模式一静态代理模式的主要内容,如果未能解决你的问题,请参考以下文章

Java代理模式——静态代理模式

java 代理模式一: 静态代理

深入理解设计模式-代理模式(静态代理动态代理jdk和cglib)

Android代理模式(静态代理,动态代理,Retrofit代理模式分析)

设计模式代理模式 ( 静态代理 )

设计思想与模式之四静态代理模式