作者tas72732002 (葱头)
看板java
标题[问题] 关於动态代理
时间Thu Jun 4 18:57:58 2015
当我操作动态代理物件的时候, 底层会自动呼叫实作InvocationHandler的物件的invoke(),
invoke : public Object invoke(Object proxy, Method method, Object[] args)
此时再透过invoke()方法内自己定义的 method.invoke(sub, args);
来呼叫sub物件(被代理类别)的method方法 (这边method是指前两行invoke()的参数)
一般反射取得方法的方法是
Method method = classType.getDeclaredMethod("sayHello",
new Class[]{String.class});
我想请问, invoke()中的Method method底层是如何取得的,
我并没传入方法名称啊, Method method是如何获得的 ?
--
感谢大家的推文
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 203.69.59.91
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1433415481.A.B30.html
※ 编辑: tas72732002 (114.34.181.227), 06/04/2015 22:05:59
1F:→ tas72732002: 不确定是否是使用拦截器做到的 06/04 22:56
2F:→ swpoker: 直接去扫物件所有的成员然後去hook 06/05 11:28