易百教程

12、类加载器是什么?

Classloader 是 JVM 的一个子系统,用于加载类文件。每当运行 java 程序时,它首先由类加载器加载。 Java中有三个内置的类加载器。

  • Bootstrap ClassLoader:这是第一个类加载器,它是 Extension 类加载器的超类。它加载包含Java标准版所有类文件的rt.jar文件,如java.lang包类、java.net包类、java.util包类、java.io包类、java.sql包类等。
  • Extension ClassLoader:这是Bootstrap的子类加载器和System类加载器的父类加载器。它加载位于 $JAVA_HOME/jre/lib/ext 目录中的 jar 文件。
  • System/Application ClassLoader:这是扩展类加载器的子类加载器。它从类路径加载类文件。默认情况下,类路径设置为当前目录。可以使用-cp-classpath开关更改类路径。它也被称为应用程序类加载器。