1.類加載器分類
1.引導(dǎo)類加載器:加載jdk核心類庫,比如rt.jar里的類,該加載器是C語言實(shí)現(xiàn),無法獲取到
2.擴(kuò)展類加載器:加載jdk里的ext包下的類
3.系統(tǒng)類加載器:加載classpath里的類
類加載器
2.類加載機(jī)制
- 全盤負(fù)責(zé)
ClassLoaderA 加載類A時(shí),當(dāng)遇到依賴的類B,C,...時(shí),繼續(xù)使用當(dāng)前類加載器ClassLoaderA進(jìn)行加載,除非單獨(dú)指定加載器。 - 雙親委派機(jī)制
系統(tǒng)類加載器 首先會委托給擴(kuò)展類加載器進(jìn)行加載,擴(kuò)展類加載器再委派給引導(dǎo)類加載器,如果可以加載,則進(jìn)行加載,否則一層層往下進(jìn)行加載。
注意:三者之間是引用關(guān)系,不是繼承關(guān)系。
優(yōu)點(diǎn):1??沙箱安全機(jī)制,2??避免重復(fù)加載類
