我有一個接口ZipCodeServer
,其中類ZipCodeServerImpl
實現。如何獲得Java反射以查找可調用函數?
我也有一個接口ZipCodeList
其中類ZipCodeListImpl
實現。
其中之一,該ZipCodeServer
接口需要的功能是現在
public void initialise(ZipCodeList newlist) throws RemoteException;
,你可以想像,當我嘗試在ZipCodeListImpl
傳遞給initialise
功能能正常工作。
但是當我嘗試通過反射來做到這一點(語法是不正確的,但基本上我傳遞只在類ZipCodeListImpl
數組):
aZipCodeServer.getClass().getMethod("initialise", [aZipCodeListImpl.getClass()]);
我得到的錯誤:
java.lang.NoSuchMethodException: ZipCodeServerImpl.initialise(ZipCodeListImpl)
當然是因爲函數期望ZipCodeList
參數。
事情是,這段代碼必須是通用的,所以我有參數列表和函數名稱,但我必須通過反射找到函數本身。
你爲什麼使用反射? 99.99999999%這意味着你做錯了*,另外0.00000001%的時間有可能是更好的方法。反思不是*泛型*使用泛型是泛型的!如果是注射,請考慮使用Guice。 – 2014-10-02 02:32:35
@jarrod必須有一個更好的副本比... ... – 2014-10-02 02:36:08
@SotiriosDelimanolis - 有,一般的互聯網和本網站! – 2014-10-02 02:37:01