duansky'weblog

          統計

          留言簿(3)

          友情鏈接

          閱讀排行榜

          評論排行榜

          通過Java反射調用方法

          這是個測試用的例子,通過反射調用對象的方法。

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

          /**?
          *?Created?by?IntelliJ?IDEA.?
          *?File:?TestRef.java?
          *?User:?leizhimin?
          *?Date:?2008-1-28?14:48:44?
          */
          ?
          public?class?TestRef?{?

          ????
          public?static?void?main(String?args[])?throws?NoSuchMethodException,?IllegalAccessException,?InvocationTargetException?{?
          ????????Foo?foo?
          =?new?Foo("這個一個Foo對象!");?
          ????????Class?clazz?
          =?foo.getClass();?
          ????????Method?m1?
          =?clazz.getDeclaredMethod("outInfo");?
          ????????Method?m2?
          =?clazz.getDeclaredMethod("setMsg",?String.class);?
          ????????Method?m3?
          =?clazz.getDeclaredMethod("getMsg");?
          ????????m1.invoke(foo);?
          ????????m2.invoke(foo,?
          "重新設置msg信息!");?
          ????????String?msg?
          =?(String)?m3.invoke(foo);?
          ????????System.out.println(msg);?
          ????}
          ?
          }
          ?

          class?Foo?{?
          ????
          private?String?msg;?

          ????
          public?Foo(String?msg)?{?
          ????????
          this.msg?=?msg;?
          ????}
          ?

          ????
          public?void?setMsg(String?msg)?{?
          ????????
          this.msg?=?msg;?
          ????}
          ?

          ????
          public?String?getMsg()?{?
          ????????
          return?msg;?
          ????}
          ?

          ????
          public?void?outInfo()?{?
          ????????System.out.println(
          "這是測試Java反射的測試類");?
          ????}
          ?
          }
          控制臺輸出結果:

          這是測試Java反射的測試類?
          重新設置msg信息!?

          Process?finished?with?exit?code?
          0


          轉自:http://lavasoft.blog.51cto.com/62575/61002

          posted on 2008-08-04 16:01 duansky 閱讀(2055) 評論(1)  編輯  收藏 所屬分類: Java

          評論

          # re: 通過Java反射調用方法[未登錄] 2012-07-26 14:11 key

          請告訴博主,他很帥!  回復  更多評論   

          主站蜘蛛池模板: 贵港市| 舞钢市| 高淳县| 东源县| 东至县| 施甸县| 百色市| 昌平区| 阜南县| 东源县| 广南县| 积石山| 彭阳县| 松江区| 文水县| 星子县| 任丘市| 铁岭市| 乌拉特前旗| 松阳县| 呼玛县| 印江| 屏边| 谢通门县| 江川县| 古田县| 泽库县| 增城市| 麦盖提县| 石门县| 买车| 平邑县| 思茅市| 新疆| 犍为县| 和林格尔县| 施甸县| 尉犁县| 香港| 淳安县| 阳江市|