java中可以根据一个字符串创建一个类的实例 并且可以了解这个类中有哪些属性、方法、方法的返回值类型和参数类型 import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; public class TestReflection { public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException,IllegalArgumentException, InvocationTargetException { String str = "T"; Class c = Class.forName(str); Object o = c.newInstance(); Method[] methods = c.getMethods(); for (Method m : methods) { if(m.getName().equals("mm")) { m.invoke(o); } if(m.getName().equals("test")) { m.invoke(o, new Object[]{1, 2}); for (Class params : m.getParameterTypes()) { System.out.println(params.getName()); } } if(m.getName().equals("getStr")) { Class returnType = m.getReturnType(); System.out.println(returnType.getName()); } } } } class T { static { System.out.println("T loaded!"); } public T() { System.out.println("T constructed!"); } int i; String s; public void mm() { System.out.println("mm"); } public void test(int i, int j) { this.i = i + j; System.out.println(this.i); } public int getInt() { return i; } public String getStr() { return s; } }