JAVA中的结构型模式:Proxy ( 代理模式 )
代理模式给某一个对象提供一个代理对象,并由代理对象控制对源对象的引用。代理就是一个人或一个机构代表另一个人或者一个机构采取行动。某些情况下,客户不想或者不能够直接引用一个对象,代理对象可以在客户和目标对象直接起到中介的作用。客户端分辨不出代理主题对象与真实主题对象。
例子:
interface Demo {
public void action();
}
class RealDemo implements Demo {
@Override
public void action() {
System.out.println("这是被真实实现类");
}
}
class ProxyDemo implements Demo {
private Demo real;
public ProxyDemo() {
System.out.println("这是代理类");
real = new RealDemo();
}
@Override
public void action() {
System.out.println("代理开始");
real.action();
System.out.println("代理结束");
}
}
public class Test {
public static void main(String[] args) {
Demo demo = new ProxyDemo();
demo.action();
}
}