如何在Java的私有方法中从另一个类访问对象?
从另一个类调用私有方法的简单示例。
档案:A.java
public class A {
private void message(){System.out.println("hello java"); }
}
文件:MethodCall.java
import java.lang.reflect.Method;
public class MethodCall{
public static void main(String[] args)throws Exception{
Class c = Class.forName("A");
Object o= c.newInstance();
Method m =c.getDeclaredMethod("message", null);
m.setAccessible(true);
m.invoke(o, null);
}
}
最佳答案
由于private仅用于声明的类中,因此不能从其他类中调用。如果要使用它,则应在将其修改为受保护或公共后再使用它。