java利用反射機制 可以動態調用某個類的某個方法,在 擴展系統功能或提供對外接口時經常用的到。
代碼如下:
打印類Print.java
package com.test.reflct; /** * 打印類 * * @date 2015-8-12 下午2:18:42 */ public class Print { public static void print(String str){ System.out.println("打印測試"+str); } }
調用類Test.java:
package com.test.reflct; import java.lang.reflect.Method; public class Test { /** * * @return void */ public static void main(String[] args) { try { //加載類 Class<?> printClass = Class.forName("com.test.reflct.Print"); //獲取方法 Method printMethod = printClass.getMethod("print",String.class); //調用 printMethod.invoke(printClass.newInstance(),"123"); } catch (Exception e) { e.printStackTrace(); } } }
運行后截圖: