双亲委派机制与作用
2.1 什么是双亲委派机制
当某个类加载器要加载 .class文件时,先上级类加载器去加载,一直递归下去,如果上级类加载器没有加载,则自己在去加载。
2.2 类加载器的区别
1)启动类加载器 BootstrapClassLoader
C++编写,加载核心库 java.* 创建 ExtClassLoader 和appClassLoader
2)标准扩展类加载器 ExtClassLoader
java编写,加载扩展库, classpath中的jre javax 或者 java.ext.dir
3)系统类加载器 AppClassLoader
用户自定义类加载器 CustomClassLoader
2.3 双亲委派机制的作用
- 防止重复加载类
- 保护java核心类的安全。即使篡改了也不会加载(找不到对应的方法。)不同的类加载器加载一个 class文件也不是一个对象了。