Java classloader delegation model ?
- by Tony
When calling a loadClass() on a class loader, the class loader firstly check the class if had been loaded or directly delegate this check to it's parent class loader ?
Java api says:
When requested to find a class or resource, a ClassLoader instance will delegate the search for the class or resource to its parent class loader before attempting to find the class or resource itself.
But there's a specific chapter about class loader in the book <java reflection in action> and says:
Class loader calls findLoadedClass to check if the class has been loaded already.If a class loader does not find a loaded class, calls loadClass on the parent class loader.
which is correct ?