代理模式

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

在一些情况下,一个客户不想或者不被允许直接操作一个对象,可通过一种中间的代理对象实现对目标对象的操作:

 1 //抽象目标类
 2 abstract class Target{
 3     public abstract void method();
 4 } 
 5 
 6 //具体目标类
 7 class ConcreteTarget extends Target{
 8 
 9     @Override
10     public void method() {
11         //业务代码
12     }
13     
14 }
15 
16 //代理类
17 class Proxy extends Target{
18 
19     ConcreteTarget target = new ConcreteTarget();
20     
21     @Override
22     public void method() {
23         //在调用源方法之前的操作
24         target.method();
25         //在调用源方法之后的操作
26     }
27     
28 }
29 
30 public class MyTest {
31 
32     /**
33      * @param args
34      */
35     public static void main(String[] args) {
36         Target target = new Proxy();
37         target.method();
38     }
39 
40 }
原文地址:https://www.cnblogs.com/gsbm/p/4787438.html