类加载器

271 阅读1分钟

图片尽管收藏,如果转载请标明出处哦!

思维导图

总结

  • ClassLoader是用来加载Class 的。它负责将 Class 的字节码形式转换成内存形式的 Class 对象。
  • JVM 运行并不是一次性加载所需要的全部类的,它是按需加载,也就是延迟加载。遇到了一个未知的类,JVM 的策略是使用调用者 Class 对象的 ClassLoader 来加载当前未知的类。
  • 自定义类加载器不易破坏双亲委派规则,不要轻易覆盖 loadClass 方法。否则可能会导致自定义加载器无法加载内置的核心类库
  • 双亲委派规则可能会变成三亲委派,四亲委派,取决于你使用的父加载器是谁,它会一直递归委派到根加载器。