溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

java類加載器的使用方法有哪些

發(fā)布時間:2022-05-21 14:12:53 來源:億速云 閱讀:173 作者:iii 欄目:大數(shù)據(jù)

今天小編給大家分享一下java類加載器的使用方法有哪些的相關(guān)知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

1、loadClass,當類加載請求到來時,首先從緩存中找到類對象。

如果有直接返回,如果沒有,交給這種加載的父加載器加載。如果沒有父加載,交給頂級啟動加載器加載。如果最后還是找不到,用findClass()加載;

2、FindClass

按名稱或位置加載Class字節(jié)碼,然后使用defineClass通常由子類實現(xiàn),如果需要定制ClassLoader,則必須重寫該方法。

3、defineClass

defineClass()方法是將byte字節(jié)流解析為JVM能夠識別的Class對象(ClassLoader中已經(jīng)實現(xiàn)了該方法邏輯),該方法不僅可以通過class文件實例化class對象,還可以通過其他方法實例化class對象,例如,通過網(wǎng)絡(luò)接收一類字節(jié)碼,然后轉(zhuǎn)換為byte字節(jié)流來創(chuàng)建相應(yīng)的Class對象,而defineClass()方法通常與findClass()方法一起使用,通常在自定義類加載器時,會直接覆蓋Classloader的findClass()方法并編寫加載規(guī)則,獲得要加載類的字節(jié)碼后轉(zhuǎn)換為流,然后調(diào)用defineClass()方法生成類的Class對象,簡單地說就是將classs文件轉(zhuǎn)換為Classs對象。

4、resolveClass使用類Class對象創(chuàng)建完成也可以同時解析。

之前我們說鏈接階段主要是對字節(jié)碼進行驗證,分配存儲器,設(shè)置類變量,同時將字節(jié)碼文件中的符號引用轉(zhuǎn)換為直接引用。

java基本數(shù)據(jù)類型有哪些

Java的基本數(shù)據(jù)類型分為:

1、整數(shù)類型,用來表示整數(shù)的數(shù)據(jù)類型。

2、浮點類型,用來表示小數(shù)的數(shù)據(jù)類型。

3、字符類型,字符類型的關(guān)鍵字是“char”。

4、布爾類型,是表示邏輯值的基本數(shù)據(jù)類型。

以上就是“java類加載器的使用方法有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI