动态代理

动态代理它可以直接给某一个目标对象生成一个代理对象,而不需要代理类存在。动态代理与代理模式原理是一样的,只是它没有具体的代理类,直接通过反射生成了一个代理对象。

KindWoman

public interface KindWoman {

public void throwEye();

public void doSomething();

}


PJL

public class PJL implements KindWoman{

public void throwEye() {

System.out.println("PJL抛媚眼");

}

public void doSomething() {

// TODO Auto-generated method stub

System.out.println("PJL...");

}

}


XMQ

final KindWoman kw = new PJL();

//生成动态代理类

KindWoman proxy = (KindWoman) Proxy.newProxyInstance(kw.getClass()

.getClassLoader(), kw.getClass().getInterfaces(),

new InvocationHandler() {

public Object invoke(Object proxy, Method method,

Object[] args) throws Throwable {

return method.invoke(kw, null);

}

});

proxy.throwEye();

proxy.doSomething();



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容