一、JDK获取动态代理对象
jdk获取动态代理类对象的步骤:
1、创建原始对象----之后的功能方法以及类加载器会用到
UserService service=new UserServiceImpl();
2、 jdk创建动态代理对象
Proxy.newProxyInstance(classLoder,interfaces,invocationHandler);
1、首先我们必须知道:Java的java.lang.reflect包下提供了一个Proxy类和一个InvocationHandler接口,还有一个Method类,通过使用类和接口可以生成JDK动态代理类或动态代理对象。 也就是:
1、Proxy提供用于创建动态代理类和代理对象的静态方法,也是所有动态代理类的父类。
2、invocationHandler(接口):表示你的代理类要干什么,额外功能的编写,接口中就一个方法 invke():表示代理对象要执行的功能代码,我们的功能(额外功能+原始类功能)就写在这个方法中
方法原型:public Object invoke(Object proxy, Method method, Object[] args){}
参数:
--object proxy:jdk创建的代理对象,无需复制
--Method method:目标类中的方法
--Object[] args:目标类中方法的参数
3、Method
作用:通过method.invoke(目标对象,方法的参数) 可以执行某个目标类方法
2、proxy提供了这样的一个静态方法来创建动