-1

我正在寻找一个提供这样的函数的 Java 库, invokeConstructor。(不想导入clojure.lang)

4

1 回答 1

2

apache commons-beanutils:

Object args[] = ...;
Class<?> argTypes[] = ...;
Object obj = ConstructorUtils.invokeConstructor(clazz, args, argTypes);
Object obj = ConstructorUtils.invokeExactConstructor(clazz, args, argTypes);

“invokeConstructor”和“invokeExactConstructor”之间的最大区别在于前者会找到一个类型分配兼容的构造函数,而后者只会匹配您提供的确切参数类型。(参见 java.lang.Class.isAssignableFrom)

于 2012-07-15T06:33:29.590 回答