導航:首頁 > 編程語言 > java動態執行

java動態執行

發布時間:2024-11-14 03:14:33

java 如何根據字元串 動態執行方法(無參和有參)

importjava.lang.reflect.Method;

publicclassTest{
publicstaticvoidmain(String[]args){
Stringa="testa";
Stringb="testb";

call(a);
call(b,"hello");

}

privatestaticvoidcall(StringmethodName){
try{
Methodm=Test.class.getDeclaredMethod(methodName);
m.invoke(Test.class);
}catch(Exceptione){
e.printStackTrace();
}
}

privatestaticvoidcall(StringmethodName,Stringparam){
try{
Methodm=Test.class.getDeclaredMethod(methodName,String.class);
m.invoke(Test.class,param);
}catch(Exceptione){
e.printStackTrace();
}
}

publicstaticvoidtesta(){
System.out.println("無參數");
}

publicstaticvoidtestb(Stringc){
System.out.println(c);
}
}

試試這個可以不。


如果解決了您的問題請採納!
如果未解決請繼續追問

㈡ Java代碼的靜態編譯和動態編譯中的問題是什麼

Java代碼正常是靜態編譯成位元組碼,由對應平台的JVM載入執行,靜態編譯無法動態擴展功能。動態編譯有兩種方式實現:

  1. 源碼編譯,需要調用Java Compiler,程序需要運行於JDK(而不是JRE)之上。

  2. 動態位元組碼生成技術(如CGLib、ASM)創建類。

動態編譯可以簡化代碼,增強類功能,但也帶來了代碼復雜度,線上不易維護。

閱讀全文

與java動態執行相關的資料

熱點內容
ssm看源碼哪本書好 瀏覽:928
linux查看網卡的命令 瀏覽:492
basic語言演算法 瀏覽:8
怎麼快捷刪除無用文件夾 瀏覽:470
你家離學校源碼用英語回答 瀏覽:499
電腦如何用伺服器地址 瀏覽:647
php轉化為二進制 瀏覽:733
程序員到國企感受 瀏覽:862
js二分搜索演算法 瀏覽:657
文件夾的定義與原意 瀏覽:201
phpredis任務隊列 瀏覽:462
文件夾的顏色代表什麼 瀏覽:894
單片機模擬通信 瀏覽:930
pandas在哪裡編譯 瀏覽:917
安卓機怎麼調清晰度 瀏覽:345
開始菜單文件夾英語 瀏覽:886
我本系列解壓縮 瀏覽:743
阿里雲伺服器打開圖形化界面 瀏覽:43
網頁設計pdf 瀏覽:485
分支定界法演算法 瀏覽:698