docs: public static <T> T newInstanceIfPossible(Class<T> beanClass) {
  		Assert.notNull(beanClass);
  		try {
  			return newInstance(beanClass);
  		} catch (Exception e) {
  			// ignore
  			// 默认构造不存在的情况下查找其它构造
  		}
  		
  		final Constructor<T>[] constructors = getConstructors(beanClass);
  		Class<?>[] parameterTypes;
  		for (Constructor<T> constructor : constructors) {
  			parameterTypes = constructor.getParameterTypes();
  			if (0 == parameterTypes.length) {
  				continue;
  			}
  			constructor.setAccessible(true);
  			try {
  				return constructor.newInstance(ClassUtil.getDefaultValues(parameterTypes));
  			} catch (Exception e) {
  				// 构造出错时继续尝试下一种构造方式
  				continue;
  			}
  		}
  		return null;
  	}