【发布时间】:2018-11-09 15:50:08
【问题描述】:
我有这个代码 sn-p:
class You{
public You(String s){}
}
public static void main(String[] args) throws NoSuchMethodException {
Constructor[] constructors = You.class.getConstructors();
for(Constructor constructor: constructors){
Class[] parameterTypes = constructor.getParameterTypes();
for(Class c: parameterTypes){
System.out.println(c.getName());//print java.lang.String
}
}
Constructor constructor =
You.class.getConstructor(String.class);//NoSuchMethodException?
}
这很老了,当我打印构造函数时,它有一个以java.lang.String 为参数的构造函数。但是当我尝试You.class.getConstructor 时,它说没有以String.class 作为参数的构造函数。
我在 mac 上使用 java1.8。您能帮忙解释一下以及如何解决吗?
非常感谢。
【问题讨论】:
-
是
You和内部类吗? -
这个例子非常适合我。你能分享一个更确切的例子吗?这个 sn-p 可能在您的实际代码中缺少一些关键因素
标签: java class reflection constructor