使用反射,可以在运行时调用对象的方法。
该示例显示了如何调用String对象的方法。
import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; String s = "你好,世界!"; // 没有参数的方法 // 调用s.length() Method method1 = String.class.getMethod("length"); int length = (int) method1.invoke(s); // variable length contains "12" // 带参数的方法 // 调用s.substring(6) Method method2 = String.class.getMethod("substring", int.class); String substring = (String) method2.invoke(s, 6); // variable substring contains "World!"