customClassLoader.defineClass() will follow different approachWill it? Why? If it doesn't call the parent first it is not compliant. I've explained all that.
where instead of checking with the parent class loader for the .class file, the current classloader will load the file explictly. Whether this is Parent last?It's parent first if it calls the parent first. It's parent last if it calls the parent last. This is not rocket science and doesn't need to be explained and beaten to death over and over again. What you are describing here sounds like neither, as it doesn't seem to call the parent at all, so it won't work, as it cannot load application classes that depend on system classes.
What is the advantages of these approaches?The advantage of parent first is that it complies with the Specification. The others don't, and the one you just described won't even work. There's no 'advantage' in techniques that don't comply with the specified contract.
Please clarify.There is nothing to clarify. You're just asking me to repeat myself, and to 'clarify' a concept that is self-evident from its name.