public static T newInstance()

in src/main/java/org/apache/commons/crypto/utils/ReflectionUtils.java [140:157]


    public static <T> T newInstance(final Class<T> klass, final Object... args) {
        try {
            final Constructor<T> ctor;
            final int argsLength = args.length;

            if (argsLength == 0) {
                ctor = klass.getDeclaredConstructor();
            } else {
                final Class<?>[] argClses = new Class[argsLength];
                Arrays.setAll(argClses, i -> args[i].getClass());
                ctor = klass.getDeclaredConstructor(argClses);
            }
            ctor.setAccessible(true);
            return ctor.newInstance(args);
        } catch (final Exception e) {
            throw new IllegalArgumentException(e);
        }
    }