如果我使用反射調用一個方法,我可以在不拋出空指針異常的情況下正常工作的唯一方法是在我調用的方法中返回一個int值。如何在java中使用反射調用void方法
例如,方法我想打電話:
public int setScore(int n)
{
this.score = n;
return 1;
}
我把它的方式:
Method setScore = myClass.getMethod("setScore", new Class<?>[]{int.class});
Object returnValue = setScore.invoke(builder, new Object[]{theScore});
更改返回類型爲void並調用它似乎總是拋出一個空指針例外。我是否需要改變我如何處理無效方法?
感謝
我想你會不會存儲返回值...? – 2012-02-15 16:24:52
看到這個鏈接,如果它有幫助http://www.mkyong.com/java/how-to-use-reflection-to-call-java-method-at-runtime/ – kosa 2012-02-15 16:25:47