国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

知道類名,方法名,和參數這三個字符串,怎么調用函數

2019-11-15 01:19:27
字體:
來源:轉載
供稿:網友
知道類名,方法名,和參數這三個字符串,怎么調用函數

  現有三個字符串,一個是類名,一個是方法名,一個是方法的參數,三個都是字符串。現需要調用該方法,具體操作如下。

  1)、先獲得該類。

    Class cname=null;    try {        cname = Class.forName (classname);    } catch (ClassNotFoundException e) {    e.PRintStackTrace();    }    

  Class.forName (classname);該方法的作用是通過反射獲取這個類對象,關于反射請參考http://www.survivalescaperooms.com/xiufengd/p/4723426.html,或自己百度。

  2)、獲取方法

Method[] methodes = cname.getDeclaredMethods();for (int i = 0; i < methodes.length; i++){    method = methodes[i];    if (method.getName().equals(methodName))    {          //其他操作    }}

  反射后獲得的類對象有一個方法:getDeclaredMethods(),該方法的作用是獲得類或接口聲明的所有方法。然后循環遍歷獲得的方法數據,通過getName方法判斷與要求方法相同的方法,然后獲得這個Method對象。

  3)、調用方法

Object result=null;if(arg.equals("")){    result = method.invoke(cname,null);}else if(arg.split(",").length==1){    result = method.invoke(cname, arg);}

  Method對象有一個方法為invoke方法,該方法有兩個參數,第一個表示類名,第二個表示參數,該方法的作用就是調用cname這個類的method方法,方法的參數為arg。

目前存在的問題:

  因為arg這個參數是一個字符串,所以所有的操作只能在具體方法中再進行分割成參數數組,然后調用多個參數。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 靖宇县| 晋宁县| 高碑店市| 杭锦旗| 黄大仙区| 北安市| 新和县| 东乡| 乡宁县| 巴马| 方山县| 铜梁县| 都昌县| 伊金霍洛旗| 阜新| 新密市| 瑞金市| 博罗县| 齐河县| 弥勒县| 陈巴尔虎旗| 凤凰县| 平湖市| 南雄市| 元朗区| 环江| 霍州市| 满洲里市| 渭南市| 彝良县| 伊春市| 洞头县| 临泉县| 萨嘎县| 河东区| 白水县| 沙洋县| 济宁市| 平利县| 莱西市| 辛集市|