[問題] 關於動態代理

作者: tas72732002 (蔥頭)   2015-06-04 18:57:58
當我操作動態代理物件的時候, 底層會自動呼叫實作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是如何獲得的 ?
作者: tas72732002 (蔥頭)   2015-06-04 22:56:00
不確定是否是使用攔截器做到的
作者: swpoker (swpoker)   2015-06-05 11:28:00
直接去掃物件所有的成員然後去hook

Links booklink

Contact Us: admin [ a t ] ucptt.com