posts - 42,  comments - 84,  trackbacks - 0

            開發(fā)的時(shí)候有時(shí)候會(huì)碰到這樣的情況,我們?cè)趯懗绦虻臅r(shí)候并不知道需要調(diào)用某個(gè)對(duì)象的哪個(gè)方法,只有程序運(yùn)行后,我們才能夠知道?;蛟S我們需要根據(jù)客戶端傳過來的某個(gè)String參數(shù)的值來判斷我們應(yīng)該執(zhí)行哪個(gè)方法。在這種情況下JAVA的反射執(zhí)行就可以幫上忙了。下面是我做的一個(gè)簡(jiǎn)單的測(cè)試代碼,提供給大家做個(gè)參考。

          import java.lang.reflect.InvocationTargetException;
          import java.lang.reflect.Method;

          /**
           * 
          @author Dong
           * 測(cè)試JAVA reflect機(jī)制
           
          */

          public class TestRef{
              
          /**
               * 
          @param args
               
          */

              
          public static void main(String[] args){
                      TestBean test 
          = new TestBean();
                      Method[] methods 
          = test.getClass().getMethods();
                      test.setAbc(
          "---");
                      
          for(int i=0;i<methods.length;i++){
                          
          if(methods[i].getName().equalsIgnoreCase("getabc")){
                              
          try {
                                  System.out.println(methods[i].invoke(test));
                              }
           catch (IllegalArgumentException e) {
                                  e.printStackTrace();
                              }
           catch (IllegalAccessException e) {
                                  e.printStackTrace();
                              }
           catch (InvocationTargetException e) {
                                  e.printStackTrace();
                              }

                          }

                      }

              }

          }

          posted on 2008-06-05 16:36 Dong 閱讀(10218) 評(píng)論(7)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 安平县| 贵阳市| 明光市| 东兰县| 彰武县| 岗巴县| 霸州市| 鲁山县| 虞城县| 大田县| 普兰店市| 方正县| 淮安市| 军事| 河西区| 梁河县| 新兴县| 通州市| 屯门区| 肇庆市| 建湖县| 玉门市| 闽侯县| 阜新| 依安县| 万州区| 秦皇岛市| 台山市| 大荔县| 克东县| 光泽县| 惠来县| 贵州省| 尖扎县| 屏东县| 稻城县| 扶沟县| 南靖县| 新郑市| 海口市| 全南县|