怎么用java在主类中调用另一个类的私有方法
推荐于2018-03-12
展开全部
//测试类
class MyTest {
public void publicMethod(Object o) {
System.out.println("调用的公共方法 " + o);
}
/**
* 类的私有方法
*/
private void privateMethod(Object o) {
System.out.println("调用了私有方法 " + o);
}
}
新建main方法
import java.lang.reflect.Method;
public class ReflectionTest {
public static void main(String args[]) throws Exception{
MyTest myTest = new MyTest();
// 调用公共方法
myTest.publicMethod("传入参数");
// 编译报错
// myTest.privateMethod();
// 获得类的私有方法
Method method = MyTest.class.getDeclaredMethod("privateMethod",Object.class);
// 开启私有访问权限
method.setAccessible(true);
method.invoke(myTest,"传入参数");
}
}
只能通过反射才能调用私有方法
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询