1.类加载:什么是类加载???什么是类加载器???类加载器有哪三种类型???如何获取类加载器???

    技术2025-11-27  15

    1.类加载:什么是类加载???什么是类加载器???类加载器有哪三种类型???如何获取类加载器???

    学习:第7遍


    1.什么是类加载???

    将class文件读取到内存中的过程,称为类加载


    2.什么是类加载器???

    class文件的加载由ClassLoader完成,称为类加载器


    3.类加载器有哪三种类型???

    第一种:BootStrapClassLoader 启动类加载器 用C++编写的,由JVM在启动时加载初始化的 主要负责加载%JAVA_HOME%/jre/lib路径下的类

    第二种:ExtClassLoader 扩展类加载器,用Java编写的 由BootStrapClassLoader加载 主要负责加载%JAVA_HOME%/jre/lib/ext路径下的类

    第三种:AppClassLoader 系统类加载器, 由BootStrapClassLoader加载 主要负责加载classpath路径下的类(对于Eclipse就是项目路径/bin目录,项目/bin下装的是运行用的字节码文件,项目/src下装的是源代码)


    4.如何获取类加载器???

    可以使用 类名.class.getClassLoader() 获取当前类的类加载器

    class文件读取到内存中会被封装成 java.lang.Class 类的对象


    public class Test{ public static void main(String[] args) { // 获取当前类的类加载器 ClassLoader loader = TestClassLoader.class.getClassLoader(); System.out.println(loader); System.out.println(User.class.getClassLoader()); System.out.println(String.class.getClassLoader()); } } class User { }
    Processed: 0.015, SQL: 9