您好,登錄后才能下訂單哦!
ClassLoader的分類及加載順序是什么,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
1.主要分4類,見下圖橙色部分
JVM類加載器:這個模式會加載JAVA_HOME/lib下的jar包
擴展類加載器:會加載JAVA_HOME/lib/ext下的jar包
系統類加載器:這個會去加載指定了classpath參數指定的jar文件
用戶自定義類加載器:sun提供的ClassLoader是可以被繼承的,允許用戶自己實現類加載器
2.類加載器的加載順序如圖所示:
3.類加載順序
JVM并不是把所有的類一次性全部加載到JVM中的,也不是每次用到一個類的時候都去查找,對于JVM級別的類加載器在啟動時就會把默認的JAVA_HOME/lib里的class文件加載到JVM中,因為這些是系統常用的類,對于其他的第三方類,則采用用到時就去找,找到了就緩存起來的,下次再用到這個類的時候就可以直接用緩存起來的類對象了,ClassLoader之間也是有父子關系的,沒個ClassLoader都有一個父ClassLoader,在加載類時ClassLoader與其父ClassLoader的查找順序如下圖所示:
關于ClassLoader的分類及加載順序是什么問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。