带有类类型的Java反射getDeclaredMethod() [英] Java Reflection getDeclaredMethod() with Class Types
本文介绍了带有类类型的Java反射getDeclaredMethod()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试理解Java反射,并且在使用非整数setter方法时遇到了困难。
I'm trying to understand Java reflecton and am encountering difficulties when working with non-Integer setter methods.
例如,如何解析getDeclaredMethod ()在下面调用?
As an example, how can I resolve the "getDeclaredMethod()" call below?
import java.lang.reflect.*;
class Target {
String value;
public Target() { this.value = new String("."); }
public void setValue(String value) { this.value = value; }
public String getValue() { return this.value; }
}
class ReflectionTest {
public static void main(String args[]) {
try {
Class myTarget = Class.forName("Target");
Method myMethod;
myMethod = myTarget.getDeclaredMethod("getValue"); // Works!
System.out.println("Method Name: " + myMethod.toString());
Class params[] = new Class[1];
//params[0] = String.TYPE; // ?? What is the appropriate Class TYPE?
myMethod = myTarget.getDeclaredMethod("setValue", params); // ? Help ?
System.out.println("Method Name: " + myMethod.toString());
} catch (Exception e) {
System.out.println("ERROR");
}
}
}
推荐答案
params[0] = String.class;
在 class
> String 将返回与 String
类关联的 Class<?>
。
Using class
on String
will return the Class<?>
that is associated with the String
class.
这篇关于带有类类型的Java反射getDeclaredMethod()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文