Java / Object, Class and Package
Difference: Class.forName() vs ClassLoader.loadClass().
Class.forName() uses the caller's classloader and initializes the class (runs static intitializers, etc.).
loadClass is a ClassLoader method, so it uses an explicitly-provided loader, and initializes the class lazily (on first use).
More Related questions...