一文彻底教会你玩转java动态代理
Posted super码王
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一文彻底教会你玩转java动态代理相关的知识,希望对你有一定的参考价值。
第一步:定义接口
//第一步:定义接口
interface testIProxy
void hello();
第二步:实现InvocationHandler接口
class myInvocationHandler implements InvocationHandler
@Override
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
System.out.println(method.getName() + "被代理给执行了");
return null;
第三步:调用
public class Demo
public static void main(String[] args)
//生成代理类
testIProxy proxyObj = (testIProxy) Proxy.newProxyInstance(ClassLoader.getSystemClassLoader(), new Class[]testIProxy.class, new myInvocationHandler());
//这句话其实是执行了 myInvocationHandler =》 invoke方法
proxyObj.hello();
运行效果展示
代码归总
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
public class Demo
public static void main(String[] args)
//生成代理类
testIProxy proxyObj = (testIProxy) Proxy.newProxyInstance(ClassLoader.getSystemClassLoader(), new Class[]testIProxy.class, new myInvocationHandler());
//这句话其实是执行了 myInvocationHandler =》 invoke方法
proxyObj.hello();
//第一步:定义接口
interface testIProxy
void hello();
//第二步:实现InvocationHandler接口
class myInvocationHandler implements InvocationHandler
@Override
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
System.out.println(method.getName() + "被代理给执行了");
return null;
以上是关于一文彻底教会你玩转java动态代理的主要内容,如果未能解决你的问题,请参考以下文章