gpt4 book ai didi

java - 什么加载了 Java 系统类加载器?

转载 作者:IT老高 更新时间:2023-10-28 21:14:27 25 4
gpt4 key购买 nike

我们知道我们可以覆盖系统 classloader与:

java -Djava.system.class.loader=com.test.MyClassLoader xxx

那么,既然com.test.MyClassLoader本身就是一个类,那么它是由谁来加载的呢?

我们如何获取这个“元”类加载器的类文件?

最佳答案

Bootstrap 类加载器 是所有类加载器 的父级,并加载JRE 的lib 目录中的标准JDK 类(rt.jar 和i18n.jar)。所有的 java.* 类都由这个 classloader 加载。

Extensions 类加载器 是 Bootstrap 类加载器的直接子代。该类加载器加载 JRE 的 lib\ext 目录中的类。

System-Classpath 类加载器 是 Extensions 类加载器的直接子代。它加载由 CLASSPATH 环境变量指定的类和 jars

您可以尝试通过 java.system.class.loader 属性注入(inject)您的自定义类加载器(参见 ClassLoader#getSystemClassLoader)。

默认系统类加载器是 MyClassLoader 实例的父级。

关于java - 什么加载了 Java 系统类加载器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11395074/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com