And parent class loader delegate

Class loader

 

Start class loader: load the Java core classes, such as System, String and so on.

Expand the class loader: load jre expansion libraries.

Application class loader: loading packages and classes jar under CLASSPATH, i.e. the programmer defined classes.

Custom loader: user-defined loader.

Delegate parents

When the class loader receives a class loading request, first try to throw so that the parent loader load, load successful return, the parent can not re-load the loader to load it.

Objective: to ensure that the same type of a different class loader is obtained in the same class, to avoid tampering with the system programmer's classes.

 

-------------

reference:

https://juejin.im/post/5a1fad585188252ae93ab953#heading-12

https://blog.csdn.net/weixin_37077950/article/details/90249151

https://www.cnblogs.com/joemsu/p/9310226.html

Guess you like

Origin www.cnblogs.com/lankerenf3039/p/12120977.html