内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

關(guān)于類加載器-創(chuàng)新互聯(lián)

  1. 類加載器作用

    在富裕等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都做網(wǎng)站、網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),成都全網(wǎng)營(yíng)銷推廣,外貿(mào)網(wǎng)站制作,富裕網(wǎng)站建設(shè)費(fèi)用合理。

負(fù)責(zé)將.class文件(存儲(chǔ)的物理文件)加載到內(nèi)存中

  1. 類加載的過程

  1. 類加載的時(shí)機(jī)

  • 創(chuàng)建類的實(shí)例(對(duì)象)

  • 調(diào)用嘞的類方法

  • 訪問類或者接口的類變量,或者為該類變量賦值

  • 使用反射方式來強(qiáng)制創(chuàng)建某個(gè)類或接口對(duì)應(yīng)的java.lang.Class對(duì)象

  • 初始化某個(gè)類的子類

  • 直接使用java.exe命令來運(yùn)行某個(gè)主類

  1. 類加載過程

  • 加載

通過包名 + 類名,獲取這個(gè)類,準(zhǔn)備用流進(jìn)行傳輸

在這個(gè)類加載到內(nèi)存中

加載完畢后創(chuàng)建一個(gè)class對(duì)象

  • 鏈接(驗(yàn)證-準(zhǔn)備-解析)

  • 驗(yàn)證 (文件中的信息是否符合虛擬機(jī)規(guī)范有沒有安全隱患)

確保Class文件字節(jié)流中包含的信息符合當(dāng)前虛擬機(jī)的要求,并且不會(huì)危害虛擬機(jī)自身安全

  • 準(zhǔn)備 (初始化靜態(tài)變量)

負(fù)責(zé)為類的類變量(被static修飾的變量) 分配內(nèi)存,并設(shè)置默認(rèn)初始化值(null)

  • 解析

將類的二進(jìn)制數(shù)據(jù)流中的符號(hào)引用替換為直接引用

  • 初始化 (靜態(tài)變量賦值以及初始化其他資源)

根據(jù)程序員通過程序指定的主觀計(jì)劃去初始化類變量和其他資源

  1. 類加載器的分類

  1. 分類

Bootstrap class loader: 虛擬機(jī)的內(nèi)置類加載器,通常表示為null,并且沒有父null

Platform class loader: 平臺(tái)類加載器,負(fù)責(zé)加載JDK中一些特殊的模塊

System class loader: 系統(tǒng)類加載器,負(fù)責(zé)加載用戶類路徑上所指的類庫

  1. 類加載器的繼承關(guān)系

System的父加載器為Platform

Platform的父加載器為 Bootstrap

public class ClassLoaderDemo1 {
    public static void main(String[] args) {
        //獲取系統(tǒng)類加載器
        ClassLoader systemClassLoader = ClassLoader.getSystemClassLoader();

        //獲取系統(tǒng)類加載器的父加載器 --- 平臺(tái)類加載器
        ClassLoader classLoader1 = systemClassLoader.getParent();

        //獲取平臺(tái)類加載器的父加載器 --- 啟動(dòng)類加載器
        ClassLoader classLoader2 = classLoader1.getParent();

        System.out.println("系統(tǒng)類加載器" + systemClassLoader);
        System.out.println("平臺(tái)類加載器" + classLoader1);
        System.out.println("啟動(dòng)類加載器" + classLoader2);

    }
}
  1. 雙親委派模型

  • 介紹

如果一個(gè)類加載器收到了類加載請(qǐng)求,自己并不會(huì)去加載,而是委派給父類加載器去執(zhí)行。

如果父類加載器還存在其父類加載器,則進(jìn)一步向上委托,依次遞歸,請(qǐng)求最終到達(dá)頂層的啟動(dòng)類加載器。

如果父類加載器可以完成類加載任務(wù),就成功返回。

倘若父類加載器無法完成此加載任務(wù),子加載器才會(huì)嘗試自己去加載,這就是雙親委派模式

  1. ClassLoader中常用的兩個(gè)方法

  • pubic static ClassLoader getSystemClassLoader() 獲取系統(tǒng)類加載器

  • public InputStream getResourceAsStream(String name) 加載某個(gè)資源文件

public class ClassLoaderTest {
    public static void main(String[] args) throws IOException {
        ClassLoader systemClassLoader = ClassLoader.getSystemClassLoader();
        InputStream is = systemClassLoader.getResourceAsStream("app.properties");
        Properties prop = new Properties();
        prop.load(is);
        System.out.println(prop);
    }
}

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

文章標(biāo)題:關(guān)于類加載器-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://www.rwnh.cn/article0/jdpio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)營(yíng)銷型網(wǎng)站建設(shè)、品牌網(wǎng)站制作響應(yīng)式網(wǎng)站、標(biāo)簽優(yōu)化關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
韶山市| 张家港市| 信阳市| 大洼县| 麻城市| 板桥市| 黄浦区| 江城| 湘潭县| 常山县| 芦山县| 通化县| 裕民县| 湖南省| 天柱县| 松滋市| 汕尾市| 遂溪县| 周宁县| 大同市| 石棉县| 武胜县| 苏尼特左旗| 乐亭县| 德令哈市| 濉溪县| 同仁县| 镇原县| 新绛县| 沅江市| 南京市| 徐汇区| 南城县| 小金县| 汉寿县| 乡宁县| 巧家县| 长葛市| 肃南| 望城县| 新泰市|