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 閱讀(2052) 評論(1)  編輯  收藏 所屬分類: Java

          評論

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

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

          主站蜘蛛池模板: 喀什市| 宁蒗| 涞水县| 轮台县| 昌邑市| 永德县| 阿克陶县| 固原市| 临夏县| 西和县| 武定县| 龙口市| 宣威市| 南陵县| 丰台区| 自贡市| 马鞍山市| 翼城县| 辉县市| 永靖县| 隆子县| 铁岭县| 涟源市| 西宁市| 肇州县| 天全县| 同心县| 大石桥市| 枣强县| 庆元县| 汝州市| 许昌县| 桂东县| 江华| 莆田市| 镇平县| 天镇县| 永靖县| 进贤县| 石嘴山市| 延川县|