开发者社区> 问答> 正文

什么是类加载器?

lassloader是JVM的子系统,用于加载类文件。具体可以解释一下吗?

展开
收起
YDYK 2020-04-23 22:45:29 928 0
2 条回答
写回答
取消 提交回答
  • 有点尴尬唉 你要寻找的东西已经被吃掉啦!

    一、什么是类加载器?

    ​Java类加载器是Java运行时环境的一部分,负责动态加载Java类到Java虚拟机的内存空间中。类通常是按需加载,即第一次使用该类时才加载。由于有了类加载器,Java运行时系统不需要知道文件与文件系统。学习类加载器时,掌握Java的委派概念很重要。

    二、它是干什么的?

    类加载器它是在虚拟机中完成的,负责动态加载Java类到Java虚拟机的内存空间中,在经过 Java 编译器编译之后就被转换成 Java 字节代码(.class 文件)。类加载器负责读取 Java 字节代码,并转换成 java.lang.Class类的一个实例。

    三、类加载器的层次

    四、类加载器的四个方面

    启动类加载器,没有父类。 拓展类加载器由Java语言实现,父类加载器为null 系统类加载器,由Java语言实现 自定义类加载器,父类加载器肯定为AppClassLoader

    2020-04-23 23:01:07
    赞同 展开评论 打赏
  • Bootstrap ClassLoader:这是第一个类加载器,它是Extension类加载器的超类。它会加载rt.jar文件,该文件包含Java Standard Edition的所有类文件,例如java.lang包类,java.net包类,java.util包类,java.io包类,java.sql包类等。 扩展ClassLoader:这是Bootstrap的子类加载器,是System类加载器的父类加载器。它加载位于$ JAVA_HOME / jre / lib / ext目录中的jar文件。 系统/应用程序类加载器:这是扩展类加载器的子类加载器。它从类路径加载类文件。默认情况下,类路径设置为当前目录。您可以使用“ -cp”或“ -classpath”开关更改类路径。它也被称为应用程序类加载器。

    2020-04-23 22:45:53
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载