code: @NonNull
      public <T> List<T> create(@NonNull Collection<Class<? extends T>> classes) {
          final List<T> result = new ArrayList<>();
          for (Class<? extends T> clazz : classes) {
              final T instance = create(clazz);
              if (instance != null) {
                  result.add(instance);
              }
          }
          return result;
      }
docs: Create instances of the given classes
  
  @param classes the classes to create insatnces of
  @param <T>     the return type
  @return a list of successfully created instances, does not contain null