Java虛拟機先從最核心的API開始查找,防止不可信的類扮演被信任的類。

雙親委派模型
雙親委派模型要求除頂層啟動類加載器外其餘類加載器都應該有自己的父類加載器;類加載器之間通過複用關系來複用父加載器的代碼。
雙親委派模型工作工程:
1.當Application ClassLoader 收到一個類加載請求時,他首先不會自己去嘗試加載這個類,而是将這個請求委派給父類加載器Extension ClassLoader去完成。
2.當Extension ClassLoader收到一個類加載請求時,他首先也不會自己去嘗試加載這個類,而是将請求委派給父類加載器Bootstrap ClassLoader去完成。
3.如果Bootstrap ClassLoader加載失敗(在<JAVA_HOME>\lib中未找到所需類),就會讓Extension ClassLoader嘗試加載。
4.如果Extension ClassLoader也加載失敗,就會使用Application ClassLoader加載。
5.如果Application ClassLoader也加載失敗,就會使用自定義加載器去嘗試加載。