Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JDK动态代理_Java_Proxy_Aop_Proxy Classes - Fatal编程技术网

Java JDK动态代理

Java JDK动态代理,java,proxy,aop,proxy-classes,Java,Proxy,Aop,Proxy Classes,我知道cglib代理通过子类化目标类和重写目标类的方法来工作 谁能告诉我动态代理是如何工作的? 我知道它使用接口进行代理,但如何通过代理进行方法调用呢 使用Proxy.newProxyInstance()可以请求实现所需接口的代理。您还需要传递一个,每次调用任何代理方法时都会调用它。然后,在处理程序中,您知道调用了哪个方法及其参数,因此您可以执行所需的操作,包括使用目标对象 Java如何处理这个问题?嗯,它是本地完成的,就像反射的内部结构和许多基本功能一样。因此,可以使用普通Java模拟这种行为

我知道cglib代理通过子类化目标类和重写目标类的方法来工作

谁能告诉我动态代理是如何工作的?
我知道它使用接口进行代理,但如何通过代理进行方法调用呢

使用
Proxy.newProxyInstance()
可以请求实现所需接口的代理。您还需要传递一个,每次调用任何代理方法时都会调用它。然后,在处理程序中,您知道调用了哪个方法及其参数,因此您可以执行所需的操作,包括使用目标对象

Java如何处理这个问题?嗯,它是本地完成的,就像
反射的内部结构和许多基本功能一样。因此,可以使用普通Java模拟这种行为


扩展信息。

此链接对代理有很好的解释