柚子快報激活碼778899分享:linux 運維 JVM類加載
柚子快報激活碼778899分享:linux 運維 JVM類加載
一、類記載過程
? ? 1、通過類的全限定名獲取存儲該類的class文件 ?? ?2、解析成運行時數(shù)據(jù),即instanceKlass實例,存放到方法區(qū) ?? ?3、在堆區(qū)生成該類的class對象,即instanceMirrorKlass實例?
二、將.class文件解析成什么?類的元信息在JVM中如何存儲
加載成Klass,Klass分為InstanceKlass和ArrayKlass
InstanceKlass ?? ?Java類 (非數(shù)組) ????????InstanceMirrorKlass(鏡像類) ?? ?????????Class對象(堆區(qū)) ????????InstanceRefKlass ?? ?????????引用
? ? ? ? InstanceClassLoaderKlass
ArrayKlass
? ? ? ? TypeArrayKlass:描述java中基本數(shù)據(jù)類型的數(shù)據(jù)結(jié)構(gòu)
? ? ? ? ObjectArrayKlass: 描述java中引用類型的數(shù)據(jù)結(jié)構(gòu)
三、Java中的數(shù)組
? ? 1、靜態(tài)數(shù)據(jù)類型 JVM中內(nèi)置的八種數(shù)據(jù)類型 ?? ?2、動態(tài)數(shù)據(jù)類型 運行時動態(tài)生成的 ?? ??? ?如何證明 ?? ??? ?newarray ?? ??? ??? ?創(chuàng)建一個指定原始類型(如int,float,char)的數(shù)組,并將其引用值壓入棧頂 ?? ??? ??? ?TypeArrayKlass:?基本類型的數(shù)組在JVM中的存在形式 ?? ??? ?anewarray ?? ??? ??? ?創(chuàng)建一個引用型(如類,接口,數(shù)組)的數(shù)組,并將其引用值壓入棧頂 ?? ??? ??? ?ObjArrayKlass:? 引用類型的數(shù)組在JVM中的存在形式
四、何時加載
????????1、 new getstatic, putstatic, invokestatic ????????2、 反射 ? ? ? ? 3、 初始化一個類的子類會去加載其父類 ? ? ? ? 4、 啟動類(main函數(shù)所在類) ? ? ? ? 5、 當(dāng)使用idk.7動志語言支持時
柚子快報激活碼778899分享:linux 運維 JVM類加載
相關(guān)文章
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。