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(); } } }
运行后截图: