public <T> List<Class<T>> loadClasses(final Class<T> superclassOrInterfaceType) {
        return loadClasses(superclassOrInterfaceType, /* ignoreExceptions = */ false);
    }
public < T > List < Class < T > > loadClasses ( final Class < T > superclassOrInterfaceType ) { return loadClasses ( superclassOrInterfaceType , false ) ; }
Convert this list of {@link ClassInfo} objects to a list of {@code Class<?>} objects, casting each item in
the list to the requested superclass or interface type. Causes the classloader to load the class named by
each {@link ClassInfo} object, if it is not already loaded.

<p>
<b>Important note:</b> since {@code superclassOrInterfaceType} is a class reference for an already-loaded
class, it is critical that {@code superclassOrInterfaceType} is loaded by the same classloader as the class
referred to by this {@code ClassInfo} object, otherwise the class cast will fail.

@param <T>
The superclass or interface.
@param superclassOrInterfaceType
The superclass or interface class reference to cast each loaded class to.
@return The loaded {@code Class<?>} objects corresponding to each {@link ClassInfo} object in this list.
@throws IllegalArgumentException
if an exception or error was thrown while trying to load or cast any of the classes.