code: public static <T> T instantiate(final String className, final Class<T> targetType, final ClassLoader classLoader) throws ClassNotFoundException {
  		final Class<? extends T> clazz = Class.forName(
  			className,
  			false,
  			classLoader).asSubclass(targetType);
  
  		return instantiate(clazz);
  	}
docs: Creates a new instance of the given class name and type using the provided {@link ClassLoader}.
  
  @param className of the class to load
  @param targetType type of the instantiated class
  @param classLoader to use for loading the class
  @param <T> type of the instantiated class
  @return Instance of the given class name
  @throws ClassNotFoundException if the class could not be found