知识大全 java动态代理Dynamic Proxy
Posted 知
篇首语:世事洞明皆学问,人情练达即文章。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 java动态代理Dynamic Proxy相关的知识,希望对你有一定的参考价值。
java动态代理Dynamic Proxy 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
被代理对象的接口:
package test dynamicproxy;
public interface TargetInterface
public void SayHello();
public int sum(int a int b);
被代理的对象:
package test dynamicproxy;
public class Target implements TargetInterface
public void SayHello()
System out println( Hello );
public int sum(int a int b)
return a+b;
InvocationHandler包装:
package test dynamicproxy;
import java lang reflect InvocationHandler;
import java lang reflect Method;
public class TargetInvocationHandler implements InvocationHandler
private Object object;
public TargetInvocationHandler(Object obj)
this object=obj;
public Object invoke(Object proxy Method method Object[] args )
throws Throwable
doBefore();
Object result = method invoke(object args );
doAfter();
return result;
public void doBefore()
System out println( do before );
public void doAfter()
System out println( do after );
测试类:
package test dynamicproxy;
import java lang reflect Proxy;
public class TestDynamicProxy
/**
* @param args
*/
public static void main(String[] args)
Target t=new Target();
TargetInvocationHandler handler=new TargetInvocationHandler(t);
TargetInterface proxy = (TargetInterface) Proxy newProxyInstance(
t getClass() getClassLoader()
t getClass() getInterfaces()
handler);
proxy SayHello();
int b=proxy sum( );
System out println(b);
cha138/Article/program/Java/hx/201311/26689
相关参考