黑马程序员技术交流社区
标题:
关于代理中InovocationHandler的怎么理解!<已解决>
[打印本页]
作者:
飞舞❤心动
时间:
2012-6-8 16:42
标题:
关于代理中InovocationHandler的怎么理解!<已解决>
本帖最后由 飞舞❤心动 于 2012-6-8 22:59 编辑
看了张i老师的基础加强最后阶段的代理,看得云里雾里,我只知道他是以个类,明白代理是在源类下面衍生出来的加强类Proxy,具体到InovocationHandler就郁闷了,到底怎么理解?难道代理也是通过反射实现的?望指教!
作者:
彭盼
时间:
2012-6-8 17:41
InvocationHandler 是代理实例的调用处理程序 实现的接口,也就是说你要想让代理实现比目标类更多额外的功能,就必须把invocationhandler的子类对象作为参数传入代理的构造函数,并把额外实现的功能放入子类的invoke()方法
作者:
潘东升
时间:
2012-6-8 18:02
Invocation就是代理实例的调用处理对象,看下面这个简图,当然张老师那个更详细:
QQ截图20120608175622.jpg
(30.84 KB, 下载次数: 14)
下载附件
2012-6-8 17:58 上传
代理类连接被代理类和调用处理对象(InvocationHandler),对被代理类的方法处理是交给了InvocationHandler,然后它对方法进行封装和修改,也就是实际上方法还是被代理类的方法,但是会做些修改,比如在方法调用前后增加系统功能。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2