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