下面的代码打印了4个数组的classloader。
我的问题是:
- 为什么数组的类加载器不同?
- 输出
null
是不是同一个意思?
/**
* output:
* null
* sun.misc.Launcher$AppClassLoader@18b4aac2
* null
* null
*/
public class Test {
public static void main(String[] args) {
String[] strings = new String[2];
System.out.println(strings.getClass().getClassLoader()); // ①
Test[] tests = new Test[2];
System.out.println(tests.getClass().getClassLoader()); // ②
int[] ints = new int[2];
System.out.println(ints.getClass().getClassLoader()); // ③
Integer[] integers = new Integer[2];
System.out.println(integers.getClass().getClassLoader()); // ④
}
}
最佳答案
Null代表这里的bootstrap类加载器。见:
https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html#getClassLoader
关于java - 哪个类加载器在 Java 中加载 Array 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62669425/