1、类加载器的作用
类加载器的作用是将class字节码文件加载到内存中,并将这些静态数据转化为方法区中的运行时数据结构,同时在堆中生成代表这个类的java.lang.Class对象,作为访问方法区中数据的入口。
2、类缓存
标准的Java SE类加载器可以按要求查找指定的类,但是一旦某个类被加载到指定的类加载器中,它将维持一段时间,不过,JVM垃圾回收机制可以回收这些Class对象,简单的说,类在被回收前,只被加载一次
3、类加载器的层次结构
*注意:
a、只有引导类加载器没有继承java.lang.ClassLoader
b、只有引导类加载器是用C++写的,其他的类加载都是用java写的
c、自定义类的加载器的父类是应用程序类加载器,应用程序类加载器的父类是拓展类类加载,拓展类类加载的父类是引导类加载器,引导类加载器没有父类
d、注意这里所说的父类并不是继承的关系,内部的采用的组合的方式实现的
————————————————————————————
1. 引导类加载器(bootstrap class loader)
作用:
1、加载Java的核心库(JAVA_HOME/jre/lib/rt.jar)或sun.boot.class.path路