在給h.invoke(this,md)傳參時,有一點不解,請老師解答
for循環infce.getMethods()時,每一次循環得到的Method m對象不就可以直接傳給h.invoke(this,m);中嗎?為什么還要
“Method md =” + infce.getName() + ".class.getMethod(\"" + m.getName() + "\");"重新獲取一下method呢?
我的問題有可能描述的不是很清楚哈,同時希望老師給解答!
for循環infce.getMethods()時,每一次循環得到的Method m對象不就可以直接傳給h.invoke(this,m);中嗎?為什么還要
“Method md =” + infce.getName() + ".class.getMethod(\"" + m.getName() + "\");"重新獲取一下method呢?
我的問題有可能描述的不是很清楚哈,同時希望老師給解答!
2015-03-14
舉報
2015-03-16
您好:
????? 其實你實驗一下就會知道結果,生成的代理$Proxy0.java文件部分內容如下:
????? h.invoke(this,public abstract void com.imooc.proxy.Moveable.move());很顯然不是我們想要的結果。
????? 這里很容易將外層代碼和里層代碼混到一起,注意一下就好了。
2015-03-25
恩恩,這暴露了我沒有實際操作,哈哈,后來我操作了,知道了,也很感謝你回答