下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
精品文檔精心整理精品文檔可編輯的精品文檔JAVA工程師實(shí)習(xí)一周總結(jié)
作為一名Java開發(fā)工程師,Java虛擬機(jī)是必須要了解的,其中的內(nèi)存劃分,工作原理自己要熟悉,所以這一周花了一部分時(shí)間閱讀了Java虛擬機(jī)規(guī)范文檔,學(xué)習(xí)了classloader機(jī)制,了解并熟悉了虛擬機(jī)內(nèi)存的劃分以及其中的各項(xiàng)參數(shù)。先說一下什么是classloader機(jī)制?
當(dāng)我們寫好一個(gè)Java程序之后,不是管是CS還是BS應(yīng)用,都是由若干個(gè).class文件組織而成的一個(gè)完整的Java應(yīng)用程序,當(dāng)程序在運(yùn)行時(shí),即會(huì)調(diào)用該程序的一個(gè)入口函數(shù)來調(diào)用系統(tǒng)的相關(guān)功能,而這些功能都被封裝在不同的class文件當(dāng)中,所以經(jīng)常要從這個(gè)class文件中要調(diào)用另外一個(gè)class文件中的方法,如果另外一個(gè)文件不存在的,則會(huì)引發(fā)系統(tǒng)異常。而程序在啟動(dòng)的時(shí)候,并不會(huì)一次性加載程序所要用的所有class文件,而是根據(jù)程序的需要,通過Java的類加載機(jī)制(ClassLoader)來動(dòng)態(tài)加載某個(gè)class文件到內(nèi)存當(dāng)中的,從而只有class文件被載入到了內(nèi)存之后,才能被其它c(diǎn)lass所引用。所以ClassLoader就是用來動(dòng)態(tài)加載class文件到內(nèi)存當(dāng)中用的。
Java虛擬機(jī)提供了三層classLoader
BootstrapclassLoader:采用nativecode實(shí)現(xiàn),是JVM的一部分,主要加載JVM自身工作需要的類,如java.lang.、java.uti.等;這些類位于$JAVA_HOME/jre/lib/rt.jar。BootstrapClassLoader不繼承自ClassLoader,因?yàn)樗皇且粋€(gè)普通的Java類,底層由C++編寫,已嵌入到了JVM內(nèi)核當(dāng)中,當(dāng)JVM啟動(dòng)后,BootstrapClassLoader也隨著啟動(dòng),負(fù)責(zé)加載完核心類庫后,并構(gòu)造ExtensionClassLoader和AppClassLoader類加載器。
ExtClassLoader:擴(kuò)展的classloader,加載位于$JAVA_HOME/jre/lib/ext目錄下的擴(kuò)展jar。
AppClassLoader:系統(tǒng)classloader,父類是ExtClassLoader,加載$CLASSPATH下的目錄和jar;它負(fù)責(zé)加載應(yīng)用程序主函數(shù)類。
其實(shí)了解了classloader機(jī)制,個(gè)人覺得比較重要的還是要學(xué)會(huì)自定義類加載器。為什么要學(xué)會(huì)自定義類加載器?
JVM提供的類加載器,只能加載指定目錄的jar和class,如果我們想加載其他位置的類或jar時(shí),例如
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年遼寧省第二屆職業(yè)技能大賽(焊接賽項(xiàng))理論參考試題庫(含答案)
- 學(xué)校秋季讀書節(jié)活動(dòng)方案計(jì)劃
- 倉庫服務(wù)質(zhì)量的提升路徑計(jì)劃
- 前臺(tái)文員的職業(yè)危機(jī)應(yīng)對(duì)策略計(jì)劃
- 倉庫應(yīng)急預(yù)案與事故處理計(jì)劃
- 人教版小學(xué)英語教案
- 冀教版七年級(jí)英語下冊(cè)單元測(cè)試題
- 備戰(zhàn)夏季無意中發(fā)現(xiàn)這個(gè)東西很好用
- 新版車間安全培訓(xùn)試題及答案 完整版
- 項(xiàng)目管理人員安全培訓(xùn)試題帶答案(完整版)
- 譯林版六年級(jí)英語上冊(cè)期中階段性學(xué)情分析試卷江蘇鎮(zhèn)江丹陽2021秋真卷含聽力答案
- (蘇教版)五年級(jí)數(shù)學(xué)上冊(cè)期中復(fù)習(xí)課件
- 三只蝴蝶 課件
- 五年級(jí)上冊(cè)第四單元驕人祖先燦爛文化龍盛麗《美麗文字民族瑰寶》教學(xué)設(shè)計(jì)表
- 控制輸血嚴(yán)重危害SHOT方案
- 臨床醫(yī)學(xué)專業(yè)學(xué)位博士各專業(yè)臨床輪轉(zhuǎn)實(shí)踐教學(xué)大綱
- 檢驗(yàn)分析方法的驗(yàn)證和確認(rèn)課件
- 慢病管理與安全用藥考核題庫與答案
- 強(qiáng)制性產(chǎn)品認(rèn)證通用知識(shí) - CCAA年度確認(rèn) 試題與答案
- 人力資源服務(wù)機(jī)構(gòu)等級(jí)劃分與評(píng)定
- WST6612020靜脈血液標(biāo)本采集指南課件
評(píng)論
0/150
提交評(píng)論