java中的动态代理Proxy
Posted liyong561
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中的动态代理Proxy相关的知识,希望对你有一定的参考价值。
动态代理是java语言的一个神奇的地方,不是很好理解,下面来看看关键的地方。
InvocationHandler 是一个接口,官方文档解释说,每个代理的实例都有一个与之关联的 InvocationHandler 实现类,如果代理的方法被调用,那么代理便会通知和转发给内部的 InvocationHandler 实现类,由它决定处理。
public interface InvocationHandler { public Object invoke(Object proxy, Method method, Object[] args) throws Throwable; }
InvocationHandler 内部只是一个 invoke() 方法,正是这个方法决定了怎么样处理代理传递过来的方法调用。
proxy 代理对象
method 代理对象调用的方法
args 调用的方法中的参数
method.invoke(ldh, args); //这个方法是核心,很重要,调用了被代理对象的方
可以说,这两个invoke方法就是动态代理的核心,动态代理还多了一个对象proxy。
附上两篇文章:https://blog.csdn.net/pangqiandou/article/details/52964066,https://blog.csdn.net/briblue/article/details/73928350
以上是关于java中的动态代理Proxy的主要内容,如果未能解决你的问题,请参考以下文章