双亲委派模型
2021-04-07 01:05:09 0 举报
双亲委派模型
作者其他创作
大纲/内容
是否可以自己写一个类叫java.lang.String ?可以,但是存在双亲委派机制,JVM会加载的是系统的String类,自己写的String类不会被加载可以通过自定义类加载(继承ClassLoader)器重写loadClass()方法,打破双亲委派机制来加载自己写的String类默认的loadClass方法是实现了双亲委派机制的逻辑,即会先让父类加载器加载
向下询问类是否可以被加载,可以则加载次类
classpath的所有jar或class
向上询问类是否已经被加载,已经被加载则不再加载
AppClassloader系统类加载器
ExtClassloader扩展类加载器
双亲委派机制的作用:1、防止重复加载同一个类,保证数据安全。2、保证核心.class不能被篡改,即使篡改也不会去加载,就算加载也不是同一个.class对象
BootstrapClassloader启动类加载器
加载Java的扩展库JRE/lib/ext/*.jar
CustomClassloader自定义类加载器
加载Java的核心库JRE/lib/rt.jar
编程人员指定的特殊目录
JVM认定两个对象是否属于同一个类型:1、类名相同(全限定类名)2、类加载器必须是同一个
0 条评论
下一页