动态代理的步骤:
1、创建动态处理器类,该类必须实现InvocationHandler接口,实现invoke方法;
2、创建被代理的类和接口;
3、通过Proxy类的静态方法newProxyInstance(ClassLoader loader,Class<?>[]interfaces,InvocationHandler h )方法 创建代理对象;
4、通过代理对象调用方法。
/**
* @Description: 测试动态代理
*/
public class JdkProxy {
@Test
public void test(){
//真实类的类加载器
ClassLoader classLoader = ProxyClass.class.getClassLoader();
//真实类实现的所有接口数组
Class<?>[] interfaces = ProxyClass.class.getInterfaces();
//自己编写的动态处理器
ProxyInvocationHandler handler = new ProxyInvocationHandler(new ProxyClass());
/*
newProxyInstance方法参数:
ClassLoader loader:真实类的类加载器