java 静态代理
静态代理:代理对象(Proxy)与目标对象(RealObject)绑定
代理对象(Proxy)与目标对象(RealObject)实现共同的接口(或者继承共同的类);
代理对象在执行方法时,内部调用真实对象的方法,并可在调用前后添加自定义操作
****************************
示例
interface A{
void fun();
}
class RealObject implements A{
@Override
public void fun() {
System.out.println("目标方法调用");
}
}
class ProxyObject implements A{
private A realObject;
public ProxyObject(A realObject){
this.realObject=realObject;
}
@Override
public void fun() {
System.out.println("代理对象方法开始调用");
realObject.fun();
System.out.println("代理对象方法调用结束");
}
}
public class MyTest {
public static void main(String[] args){
RealObject realObject=new RealObject();
ProxyObject proxyObject=new ProxyObject(realObject);
proxyObject.fun();
}
}
*************************
控制台输出
代理对象方法开始调用
目标方法调用
代理对象方法调用结束