如何从较高层次的类中访问较低层次的类加载器加载的类

时间:2014-08-09 15:14:39

标签: java classloader

可能标题不是很清楚。这是问题/场景。

A类由ClassloaderA加载 B类由ClassloaderB

加载

ClassloaderB的层次结构低于ClassloaderA,所以我知道A类不能访问B类。

A类是否可以访问b类。 (假设A类访问ClassloaderB并要求给B类然后使用反射访问它的方法)

这可能吗?

1 个答案:

答案 0 :(得分:0)

默认情况下完成,具体取决于类加载器策略(parent-first,parent-last)。

家长第一
类加载器B(子)尝试查找类X,因此它首先询问父类(ClassloaderA)是否在类路径上具有该类并加载该类。如果父级可以访问该类,则使用父级版本,如果不是子级尝试在子级类路径上查找该类。

<强>父-最后
ClassloaderB(子)在子类路径上查找类,如果没有找到,则要求父类加载在类路径上查找类