目录

Java 中的双亲委派的“双”怎么理解

Java 中的双亲委派的“双”是指:在双亲委派机制中,“双”指的是双重检查机制。当一个类加载器接收到类加载请求时,它首先检查该类是否已经被加载了,如果已经被加载了,则直接返回该类的Class对象;如果没有被加载,则将加载请求委派给父类加载器处理。父类加载器也会进行相同的检查和委派,直到请求被传递到顶层的启动类加载器,如果启动类加载器仍然无法找到所需的类,则会由子类加载器尝试加载该类。

一、Java 中的双亲委派

Java 中的双亲委派指的是一种类加载机制,该机制将类加载请求传递给其父类加载器,直到请求被传递到顶层的启动类加载器,如果父类加载器无法找到所需的类,则子类加载器才会尝试加载该类。这种机制保证了Java程序中所有的类都能够被顶层的启动类加载器加载,从而保证了Java程序的稳定性和安全性。

在双亲委派机制中,“双”指的是双重检查机制。当一个类加载器接收到类加载请求时,它首先检查该类是否已经被加载了,如果已经被加载了,则直接返回该类的Class对象;如果没有被加载,则将加载请求委派给父类加载器处理。父类加载器也会进行相同的检查和委派,直到请求被传递到顶层的启动类加载器,如果启动类加载器仍然无法找到所需的类,则会由子类加载器尝试加载该类。通过这种双重检查机制,Java程序可以避免同一个类被不同的类加载器加载多次,从而保证了Java程序的稳定性和安全性。

一站式研发项目管理平台 PingCode

一站式研发项目管理平台 PingCode

支持敏捷\瀑布、知识库、迭代计划&跟踪、需求、缺陷、测试管理,同时满足非研发团队的流程规划、项目管理和在线办公需要。