这里使用的是:3.9 的版本,还是比较新的
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
<T> T invokeConstructor(final Class<T> cls, Object... args)
返回指定类的新实例,以从参数的类型推断正确的构造函数
<T> T invokeConstructor(final Class<T> cls, Object[] args, Class<?>[] parameterTypes)
返回指定类的新实例,并从参数类型列表中选择合适的构造函数
<T> T invokeExactConstructor(final Class<T> cls, Object... args)
返回指定类的新实例,以从参数的类型推断正确的构造函数
<T> T invokeExactConstructor(final Class<T> cls, Object[] args, Class<?>[] parameterTypes)
返回指定类的新实例,并从参数类型列表中选择合适的构造函数
<T> Constructor<T> getAccessibleConstructor(final Class<T> cls, final Class<?>... parameterTypes)
查找具有类和签名的构造函数,并检查可访问性。
<T> Constructor<T> getAccessibleConstructor(final Constructor<T> ctor)
检查指定的构造函数是否可访问。
<T> Constructor<T> getMatchingAccessibleConstructor(final Class<T> cls, final Class<?>... parameterTypes)
查找具有兼容参数的可访问构造函数