code: @SuppressWarnings("unchecked")
  	public static <T> Constructor<T> getConstructor(Class<T> clazz, Class<?>... parameterTypes) {
  		if (null == clazz) {
  			return null;
  		}
  
  		final Constructor<?>[] constructors = getConstructors(clazz);
  		Class<?>[] pts;
  		for (Constructor<?> constructor : constructors) {
  			pts = constructor.getParameterTypes();
  			if (ClassUtil.isAllAssignableFrom(pts, parameterTypes)) {
  				// 构造可访问
  				constructor.setAccessible(true);
  				return (Constructor<T>) constructor;
  			}
  		}
  		return null;
  	}
docs: 查找类中的指定参数的构造方法，如果找到构造方法，会自动设置可访问为true
  
  @param <T> 对象类型
  @param clazz 类
  @param parameterTypes 参数类型，只要任何一个参数是指定参数的父类或接口或相等即可，此参数可以不传
  @return 构造方法，如果未找到返回null