摘要:
一、什么是双亲委派模型 简单来说,就是当一个类加载器被调用的loadClass方法之后,不会直接就加载这个class,而是会先将加载任务向上(父加载器)递交,让父类加载器尝试加载,直到最顶层类加载器,然后再依次向下加载,直到能够加载返回。 1 public Class<?> loadClass(St 阅读全文
摘要:
一、类加载器的类型 1、Bootstrap类加载器 最顶层的类加载器,它是由C++编写,主要负责JVM的核心类库的加载,例如java.lang包。 2、扩展类加载器 第二层类加载器,父加载器当然就是bootstrap,主要是加载jre\lb\ext子目录里面的类库。 3、系统类加载器 第三层类加载, 阅读全文
摘要:
一、类的加载阶段 类的加载阶段,其实就是将class字节码文件中的二进制数据读取到内存之中,然后将文件所代表的静态存储结构,转换为方法区中运行时的数据结构,并且在堆内存中生成一个该类的java.lang.Class对象,作为访问方法区数据结构的入口。 而在同一个类加载器下,无论一个类被加载多少次,堆 阅读全文