国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

Java的類裝載器和命名空間

2019-11-18 15:35:19
字體:
供稿:網(wǎng)友
摘要
                                                                                    
    java的類裝載器是Java動態(tài)性的核心,本文將向大家簡要介紹Java的類裝載器,及相關(guān)的parent delegation模型,命名空間,運行時包等概念,同時討論一些在學(xué)習(xí)中輕易混淆的問題。 

類裝載器的功能及分類

    顧名思義,類裝載器是用來把類(class)裝載進JVM的。JVM規(guī)范定義了兩種類型的類裝載器:啟動類裝載器(bootstrap)和用戶自定義裝載器(user-defined class loader)。 

   bootstrap是JVM自帶的類裝載器,用來裝載核心類庫,如java.lang.*等。如java.lang.Object是由bootstrap裝載的。 

   Java提供了抽象類ClassLoader,所有用戶自定義類裝載器都實例化自ClassLoader的子類。 System Class Loader是一個非凡的用戶自定義類裝載器,由JVM的實現(xiàn)者提供,在編程者不非凡指定裝載器的情況下默認(rèn)裝載用戶類。系統(tǒng)類裝載器可以通過ClassLoader.getSystemClassLoader() 方法得到。

例1,測試你所使用的JVM的ClassLoader

/*LoaderSample1.java*/
public class LoaderSample1 {
    public static void main(String[] args) {
        Class c;
        ClassLoader cl;
        cl = ClassLoader.getSystemClassLoader();
        System.out.PRintln(cl);
        while (cl != null) {
            cl = cl.getParent();
            System.out.println(cl);
        }
        try {
            c = Class.forName("java.lang.Object");
            cl = c.getClassLoader();
            System.out.println("java.lang.Object's loader is " + cl);
            c = Class.forName("LoaderSample1");
            cl = c.getClassLoader();
            System.out.println("LoaderSample1's loader is " + cl);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 扎囊县| 松原市| 饶阳县| 安龙县| 青阳县| 抚宁县| 贵州省| 南宁市| 临江市| 房山区| 和平县| 澄城县| 田东县| 榆中县| 兴山县| 乌兰察布市| 禹州市| 远安县| 昌图县| 卓尼县| 南川市| 吉安市| 永寿县| 公安县| 庄浪县| 萝北县| 屏南县| 海口市| 堆龙德庆县| 额敏县| 甘南县| 澳门| 广河县| 扎囊县| 尉犁县| 志丹县| 桦甸市| 涪陵区| 海城市| 哈巴河县| 高邮市|