使用Reflection访问Java中同级别类的公共方法

时间:2013-02-20 16:25:43

标签: java reflection

public class A{

}

//this class is in the same file as A class i.e. A.java
class B{

   //has a public method
}

这两个类别都是相同的文件。 因此,无法将课程B设为public

在尝试访问类B的公共方法时,它使用Reflection定义在与类A相同的级别,它使我IllegalAccessException无法访问类{{1}的成员修饰符B

我有什么方法可以用反射来实现它吗?

2 个答案:

答案 0 :(得分:1)

将您的课程 B 视为公开,然后尝试。它应该工作。

引用java文档

  

引用(类,接口或数组)类型的成员(类,接口,字段或方法)或类类型的构造函数只有在类型可访问且成员或构造函数声明为允许访问

答案 1 :(得分:0)

您需要setAccesible(true)该方法。