Java jython中的私有方法初始
这是我在这个论坛上的第一个问题,我一直在寻找我的案件没有运气 调用层次结构如下所示:Java jython中的私有方法初始,java,python,jython,Java,Python,Jython,这是我在这个论坛上的第一个问题,我一直在寻找我的案件没有运气 调用层次结构如下所示: public class ClassA { private methodA() { a = methodB() return a } private methodB(){ b = methodC() return b } private methodC(){ c = 5 + 1 re
public class ClassA {
private methodA() {
a = methodB()
return a
}
private methodB(){
b = methodC()
return b
}
private methodC(){
c = 5 + 1
return c
}
}
所有方法都在同一个类中
我使用jython中的以下代码调用私有方法A:
m = object.class.getDeclaredMethod("methodA")
m.setAccessible(True)
m.invoke(object)
问题是setAccessible修饰符是否会传播到其他私有方法。并且所有方法都将成功返回预期值
请帮帮我。我不太清楚杰顿。但是看起来m和你的方法是一样的。 如果将m(或methodA)设置为可访问,则不会将methodB设置为可访问
但是,正如您现在可以调用methodA一样,此方法在从其自己的类调用其他私有方法时没有问题。因此,您的意思是,如果成功调用methodA而没有出现任何错误,这意味着此方法在内部能够调用其内部的所有私有方法,是吗?我想说你刚刚把这个方法的访问修饰符从private改为public。方法本身始终有权调用自己类的私有方法。如果methodA从一开始是公共的,您是否能够调用methodA并让methodA代表您成功调用methodB?对反射也是如此。你只要把你的入口打开,房子就属于你了。