java虛擬機(四)雙親委派模型

雙親委派模型是在實現在類加載器之間的。

一般有三種類加載器  啓動類加載器  擴展類加載器     應用程序加載器。  在沒有自己定義的類加載器出現 我們的應用程序是由這三種類加載器相互配合的。

從名字可以看出  啓動類加載器是最頂層的   應用程序是底層的

那麼該模型的工作過程就是,如果一個類加載器收到了類加載的請求,他不會自己去嘗試加載這個類,而是把請求傳遞給父類,父類再傳遞 。 如果最頂層的父類 可以加載請求 類就加載成功,否則,再一級級下來。 也就是說,如果父類可以解決,子類就不會自己去解決它。

 

到這裏有人會覺得很奇怪,那爲什麼呢?我們知道 不同的類加載器去加載一個類的時候,產生出來的類是不同的。那jvm爲了保證 基礎類都是相同的,就要讓同一個類加載器去加載類。

舉一個例子,Object    如果又不用的類加載器去加載 那會有什麼樣的情況?  結果就是,有不同的Object類。那其他類到底是繼承哪個Object?很難說。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章