getClassloader返回null而不是引导类加载器

时间:2019-02-28 19:00:00

标签: java jvm classloader

众所周知,rt.jar库中的类是通过Bootstrap Classloader加载的。 java.lang是rt.jar库的一部分。

但是,此示例

System.out.println(ArrayList.class.getClassLoader());

打印null而不是BootstrapClassLoader之类的东西。

此外,我知道BootstrapClassLoader不是用Java编写的。 可能是原因吗? 以及如何确保BootstrapCL加载了该类?

1 个答案:

答案 0 :(得分:2)

int resHeight = System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height;  // 1440
int actualHeight = SystemParameters.PrimaryScreenHeight;  // 960
double ratio = actualHeight / resHeight;
double dpi = resHeigh / actualHeight;  // 1.5 which is true because settings says 150%

文档明确警告您这种情况。

  

返回该类的类加载器。
某些实现可以使用   null代表引导类加载器

请记住始终查看相关的 JavaDoc 。那对所有事物都是有效的,有时可能是救生员。