zoukankan      html  css  js  c++  java
  • JDK11和JDK8类加载器的区别

    如下代码:

    public class Test07 {
        public static void main(String[] args) throws ClassNotFoundException {
            // 获取系统类加载器
            ClassLoader systemClassLoader = ClassLoader.getSystemClassLoader();
            System.out.println(systemClassLoader);
            // 获取系统类加载器的父类加载器 --> 扩展类加载器
            ClassLoader parent = systemClassLoader.getParent();
            System.out.println(parent);
            // 获取扩展类加载器的父类加载器 --> 根加载器(C/C++)
            ClassLoader parent1 = parent.getParent();
            System.out.println(parent1);
            // 测试当前类的加载器
            ClassLoader classLoader = Class.forName("com.itteer.reflection.Test07").getClassLoader();
            System.out.println(classLoader);
            // 测试JDK内置的类加载器
            classLoader = Class.forName("java.lang.Object").getClassLoader();
            System.out.println(classLoader);
            // 如何获得系统类加载器可以加载的路径
            System.out.println(System.getProperty("java.class.path"));
        }
    }
    

    使用JDK11编译,输出结果如下:

    jdk.internal.loader.ClassLoaders$AppClassLoader@1f89ab83
    jdk.internal.loader.ClassLoaders$PlatformClassLoader@7c30a502
    null
    jdk.internal.loader.ClassLoaders$AppClassLoader@1f89ab83
    null
    D:IDEAWorkspacedemoanno
    

    使用JDK8编译,输出结果如下:

    sun.misc.Launcher$AppClassLoader@18b4aac2
    sun.misc.Launcher$ExtClassLoader@1b6d3586
    null
    sun.misc.Launcher$AppClassLoader@18b4aac2
    null
    D:Javajdk1.8.0jrelibcharsets.jar;
    D:Javajdk1.8.0jrelibdeploy.jar;
    D:Javajdk1.8.0jrelibextaccess-bridge-64.jar;
    D:Javajdk1.8.0jrelibextcldrdata.jar;
    D:Javajdk1.8.0jrelibextdnsns.jar;
    D:Javajdk1.8.0jrelibextjaccess.jar;
    D:Javajdk1.8.0jrelibextjfxrt.jar;
    D:Javajdk1.8.0jrelibextlocaledata.jar;
    D:Javajdk1.8.0jrelibext
    ashorn.jar;
    D:Javajdk1.8.0jrelibextsunec.jar;
    D:Javajdk1.8.0jrelibextsunjce_provider.jar;
    D:Javajdk1.8.0jrelibextsunmscapi.jar;
    D:Javajdk1.8.0jrelibextsunpkcs11.jar;
    D:Javajdk1.8.0jrelibextzipfs.jar;
    D:Javajdk1.8.0jrelibjavaws.jar;
    D:Javajdk1.8.0jrelibjce.jar;
    D:Javajdk1.8.0jrelibjfr.jar;
    D:Javajdk1.8.0jrelibjfxswt.jar;
    D:Javajdk1.8.0jrelibjsse.jar;
    D:Javajdk1.8.0jrelibmanagement-agent.jar;
    D:Javajdk1.8.0jrelibplugin.jar;
    D:Javajdk1.8.0jrelib
    esources.jar;
    D:Javajdk1.8.0jrelib
    t.jar;
    D:IDEAWorkspacedemoanno;
    C:Program FilesJetBrainsIntelliJ IDEA 2019.3.1libidea_rt.jar
    
  • 相关阅读:
    MySql基础教程(三)——查询训练
    MySql基础教程(二)
    MySql基础教程(一)
    解决Eclipse闪退问题的方法总结
    MySQL图形工具 MySQL GUI Tools的安装使用方法
    MySql5.6版修改用户登录密码
    Windows下MySQL解压版的配置
    js 数组容易弄混的那些方法
    如何使CSS--better(系列二)
    如何使CSS--better(系列一)
  • 原文地址:https://www.cnblogs.com/wgh2008/p/12313988.html
Copyright © 2011-2022 走看看