2016-03-15 37 views
1

要執行在運行時函數,函數名從運行時得到它:得到函數名稱和執行

public static void callClassname() throws Exception 
{ 
    String[] getExecute =getInputdata.getEligibleColoumn(); 
    for(int i=0 ; i < getExecute.length ; i++) 
    { 
     getExecute[i] = getExecute[i].concat("()");String test = "classname." .concat(getExecute[i]); 
     System.out.println("Test Passed:" + test); 
    } 
} 
在上面的代碼測試

會給結果classname.functionname()。我想執行它或調用它。你能幫我怎麼做,或者其他更好的方法嗎? PLZ建議。

+0

一切都在運行時執行。 –

+0

如果你已經在你的main方法或測試註釋中調用了這個函數,那麼這個代碼將永遠運行,如果沒有,那麼永遠不會運行 –

+0

我沒有看到這樣做的方法,''Classname.function()'只適用於靜態函數。您可以保留數字或指定整數來表示方法並適當地調用它們。 –

回答

0

來解決這個問題,並呼籲實例方法,最好的方法是使用Java反射API

+1

二手開關。 ...案例陳述...它的工作...謝謝:-) – Sathya