1. 程式人生 > >什麽類加載器的雙親委托模型?

什麽類加載器的雙親委托模型?

工作過程 code .com 約束 情況 com 不同 文件 class

技術分享圖片

類加載器的雙親委托模型並不是一個強制的約束模型,而是 Java 設計者推薦給開發者的一種加載器方式。上面類加載器的父子關系一般不會以繼承的方式實現,而是采用組合的關系來復用父類加載器的代碼。

工作過程:如果一個類加載器收到了類加載的請求,它首先不會自己去加載這個類,而是把這個請求委派給父類加載器去完成,每一個層次的類加載器都是如此,因此所有的加載請求都應該傳送到頂層的啟動類加載器,只有當父加載器無法完成這個加載請求時,子加載器才會嘗試自己去加載。

為什麽要有雙親委派模型呢?原因是雙親委派模型可以保證 Java 程序的穩定性。比如你有一個類,在不采用雙親委派模型的情況下,可能會有不同的加載器去加載這個類,不同類加載器加載出來的 Class

文件必然不相同,這樣就造成了不一致性

什麽類加載器的雙親委托模型?