I was going through apache tomcat opensource code, and at the start, in Bootstrap.java i found this:
Class<?> startupClass = catalinaLoader.loadClass("org.apache.catalina.startup.Catalina");
Since the code uses explicitly
catalinaLoader and assuming it later creates an instance of the class, it's to make sure that the
Catalina class is loaded with a different classloader than the
For further information what this means, refer to documentation about class loading.