什么是类加载器
是专门负责加载类的命名/工具
类加载器的种类
- 启动类加载器
- 扩展类加载器
- 应用类加载器
示例
String s = "abc";
在代码执行之前,会将所有需要的类加载到JVM中去,通过类加载器加载,当看到上述代码出现时,类加载器会去查找string.class文件,如果找到了就加载。
类加载器加载类的步骤:
- 首先会通过”启动类加载器“加载
- 如果没有找到,会通过“扩展类加载器”加载
- 如果还未找到,会通过“应用类加载器”加载
双亲委派机制
Java中为了保证类加载的安全,使用了双亲委派机制。
优先从“启动类加载器”加载,这个称为“父”,“父”无法加载到,会从“扩展类加载器”加载,这个称为“母”,双亲委派,如果还加载不到,才会考虑从“应用类加载器”中加载,直到加载到为止。