詳解Class加載過程01

Class Loading Linking Initalizing

??????簡單說上次講到了class文件的格式蚀之,這次講的是class文件怎么放進內(nèi)存的。
??????class 文件怎么進入到內(nèi)存有三大步。
1.第一大步叫Loading
2.第二大步叫Linking
?? ????linking又分為三小步识啦,第一小步verfication箕憾,第二小步preparation擂煞,第三小步resolution
3.第三大步叫Initlalizing
首先來看看Loading的過程诬辈,解釋下每一步是什么意思
??????首先Loading酵使,是把一個class文件load內(nèi)存裝載到內(nèi)存里面去,他本來是class文件上的一個一個的二進制自晰,一個一個的字節(jié)凝化,裝完之后就是接下來Linking稍坯。
Linking的過程分為三小步
(1).verification是校驗裝進來的class文件是不是符合class文件的標準酬荞。
(2).preparation是把class文件靜態(tài)變量賦默認值搓劫,不是賦初始值。
(3)resolution是把class文件常量池里面用到的符號引用混巧,要給它轉(zhuǎn)換為直接內(nèi)存地址枪向,直接可以訪問到的內(nèi)容。
Initlalizing指的是靜態(tài)變量這時候賦值才成為初始值咧党。


類加載器.png

如上圖所示類加載器秘蛔,首先第一點jvm本身有一個類加載器的層次,這個類加載器本身就是一個普通的class傍衡,jvm有一個類加載器的層次分別來加載不同的class深员,jvm所有的class都是被類加載器加載到內(nèi)存的,那么這個類加載器可以叫做classloader蛙埂。
每一個class在java虛擬機里面到內(nèi)存里面任何一個class都是被classloader內(nèi)存的倦畅,那么這個classloader其實就是頂級一個父類,這個父類叫做classloader绣的,他是一個abstract抽象類叠赐,相當于這個類被領到內(nèi)存里面去了,他一定是classloader這個類的子類屡江,如果想知道class是被誰弄到內(nèi)存里面去的芭概,其實很簡單,就是下面這段代碼
System.out.println(String.class.getClassLoader());
第一個類加載器層次
類加載的加載過程惩嘉,加載過程是分成不同的層次來加載罢洲,不同的類加載器來加載不同的class,最頂層的是Bootstrap
第二個類加載器層次
這個是Extension加載器拓展類文黎,加載拓展包里的各種各樣文件奏路,這些拓展包在jdk安裝目錄jre/lib/ext下的jar
第三個類加載器層次
這個就是平時用的加載器application,它用于加載classpath指定的內(nèi)容
第四個類加載器層次
這個就是自定義加載器classloader臊诊,加載自己有定義的加載器
CustomClassLoader父類加載器是>application父類加載器是>Extension父類加載器是>Boostrap,
且其他不是繼承鸽粉,不要混淆.
這里就會引出雙親委派機制,這也是類加載器面試題必問的問題抓艳,下一章節(jié)在自習講解吧

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末触机,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子玷或,更是在濱河造成了極大的恐慌儡首,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件偏友,死亡現(xiàn)場離奇詭異蔬胯,居然都是意外死亡,警方通過查閱死者的電腦和手機位他,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進店門氛濒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來产场,“玉大人,你說我怎么就攤上這事舞竿【┚埃” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵骗奖,是天一觀的道長确徙。 經(jīng)常有香客問我,道長执桌,這世上最難降的妖魔是什么鄙皇? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮仰挣,結(jié)果婚禮上育苟,老公的妹妹穿的比我還像新娘。我一直安慰自己椎木,他們只是感情好违柏,可當我...
    茶點故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著香椎,像睡著了一般漱竖。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上畜伐,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天馍惹,我揣著相機與錄音,去河邊找鬼玛界。 笑死万矾,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的慎框。 我是一名探鬼主播良狈,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼笨枯!你這毒婦竟也來了薪丁?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤馅精,失蹤者是張志新(化名)和其女友劉穎严嗜,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體洲敢,經(jīng)...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡漫玄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了压彭。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片睦优。...
    茶點故事閱讀 38,100評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡渗常,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出刨秆,到底是詐尸還是另有隱情凳谦,我是刑警寧澤忆畅,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布衡未,位于F島的核電站,受9級特大地震影響家凯,放射性物質(zhì)發(fā)生泄漏缓醋。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一绊诲、第九天 我趴在偏房一處隱蔽的房頂上張望送粱。 院中可真熱鬧,春花似錦掂之、人聲如沸抗俄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽动雹。三九已至,卻和暖如春跟压,著一層夾襖步出監(jiān)牢的瞬間胰蝠,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工震蒋, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留茸塞,地道東北人。 一個月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓查剖,卻偏偏與公主長得像钾虐,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子笋庄,可洞房花燭夜當晚...
    茶點故事閱讀 42,834評論 2 345

推薦閱讀更多精彩內(nèi)容