+ }
+ }
+
+ public static <T> T createObject(Class<T> clazz, Class[] parameterTypes, Object... arguments) {
+ try {
+ Constructor<T> constructor = clazz.getDeclaredConstructor(parameterTypes);
+ constructor.setAccessible(true);
+ return constructor.newInstance(arguments);
+ } catch (NoSuchMethodException | InstantiationException | IllegalAccessException | InvocationTargetException e) {