一,每一个加载器都有一个独立的类名字空间,两个类来源于同一个class文件,如果不是被同一个加载器加载,那么这两个加载的类是不相等的。

二,加载器的类型:

1,启动类加载器,c++实现是JVM的一部分,一般加载JAVA_HOME/lib下面JVM识别的类。启动类加载器无法被java程序直接引用。

2,扩展类加载器,一般加载JAVA_HOME/lib/ext下面JVM识别的类,程序可引用。

3,应用程序加载器,加载用户类库ClassPath路径下的类。

三,双亲委派模型加载器

双亲委派模型加载器队了启动类加载器,其它加载器都有父加载器。

深入理解java虚拟机-加载器

双亲委派模型加载器让程序的稳定运行,它是官方推荐的加载器实现方式,非强制性约束模型。

双亲委派模型加载器加载过程:

如果一个类加载器收到了加载请求,它不会立即加载,它会把这个请求派给父加载器去完成,依次递归,最终所有的请求都会派给启动类加载器去处理,如果处理不了,才给子加载器去处理。

 

 

相关文章:

  • 2021-05-01
  • 2021-04-08
  • 2021-11-12
  • 2021-08-09
  • 2021-09-22
  • 2021-07-18
  • 2022-12-23
  • 2021-07-03
猜你喜欢
  • 2022-12-23
  • 2021-08-11
  • 2021-12-22
  • 2021-04-11
  • 2021-10-17
  • 2021-10-09
  • 2022-12-23
相关资源
相似解决方案