当给定方法名称作为字符串时,如何调用 Java 方法?
java.lang.reflect.Method 类提供有关类或接口上的单个方法的信息和对其的访问。反映的方法可以是类方法或实例方法(包括抽象方法)。当将要调用的实际参数与基础方法的形式参数进行匹配时,方法允许发生扩展转换,但如果发生缩小转换,它会抛出 IllegalArgumentException。
您可以使用java.lang.reflect包的名为 method 的类来调用该方法。此类的构造函数接受字符串形式的方法名称。您可以使用该invoke()方法调用此方法。
示例
import java.lang.reflect.Method;public class DemoTest {
private void sampleMethod(){
System.out.println("hello");
}
}
public class SampleTest {
public static void main(String args[]) throws Exception{
Class c = Class.forName("DemoTest");
Object obj = c.newInstance();
Method method = c.getDeclaredMethod("sampleMethod", null);
method.setAccessible(true);
method.invoke(obj, null);
}
}
以上是 当给定方法名称作为字符串时,如何调用 Java 方法? 的全部内容, 来源链接: utcz.com/z/338825.html