Bootstrap Classloader加载的类

 手机用户2502853373 发布于 2023-02-07 20:58

这个帖子引起了这个问题。当运行如下所示的简单程序时

public class Sample
{
    public static void main(String[] args)
    {
    }
}

带有options -versbose:class,它在加载该类之前列出了一堆类

[Opened C:\jdk1.6.0_14\jre\lib\rt.jar]
[Loaded java.lang.Object from C:\jdk1.6.0_14\jre\lib\rt.jar]
[Loaded java.io.Serializable from C:\jdk1.6.0_14\jre\lib\rt.jar]
[Loaded java.lang.Comparable from C:\jdk1.6.0_14\jre\lib\rt.jar]
.
.
.
.
.
.
[Loaded java.security.cert.Certificate from C:\jdk1.6.0_14\jre\lib\rt.jar]
[Loaded Sample from file:/D:/tmp/]
[Loaded java.lang.Shutdown from C:\jdk1.6.0_14\jre\lib\rt.jar]
[Loaded java.lang.Shutdown$Lock from C:\jdk1.6.0_14\jre\lib\rt.jar]

我的问题是

我的计划从来不需要象类java.util.CollectionSet List等等。那么为什么Bootstrap类加载器正在加载它们。这是JVM规范要求的方式还是Bootstrap类加载器如何确定要加载的类?

编辑:

另一个方面:

即使您尝试运行不存在的类,该程序也会以ClassNotFoundException但并非没有加载前面提到的所有类结束。因此,仅在调用JVM时加载类!因此,JVM默认情况下会加载一组类,但是,什么决定了这种行为呢?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有