![](/img/trans.png)
[英]How to use varargs as the parameter of Constructor.getConstructor( ) in java
[英]How to 'getConstructor' where constructor signature contains java array
是否可以使用getConstructor来获取下面的类X的构造函数?
public class A {
}
public class Y {
}
public class X extends Y {
public X(A a, Y[] yy) {
}
public void someMethod() throws SecurityException, NoSuchMethodException {
Class<? extends Y> clazz = X.class;
Constructor<? extends Y> c =
clazz.getConstructor(new Class[]{
A.class,
/* what do I put in here for the array of Ys? */
});
}
}
谢谢
您可以像使用“未修饰”类(即ClassName[].class
一样构造涉及数组表示法的类文字。 这个文字产生“描述ClassName
实例数组的类”。 在你的情况下:
clazz.getConstructor(new Class[] {
A.class,
Y[].class
});
或者更短。
Constructor<X> c = X.class.getConstructor(A.class, Y[].class);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.