【发布时间】:2015-09-14 05:52:24
【问题描述】:
我需要调用Parent 类中存在的私有方法,并且我创建了一个扩展Parent 类的Child 类。现在我想通过Child类的对象调用Parent类中出现的私有方法,而不使用反射API。我该怎么做?
还有我可以更改Parent类的结构的权限。
class Parent{
private void print(){
System.out.println("Private Parent");
}
}
class Child extends Parent{
}
【问题讨论】:
-
你好像误解了
private的意思。 -
如果你真的想这样做,那么你可以在父级中创建另一个公共方法来调用它的打印方法
-
Parent的私有方法可能具有微妙的状态,这可能取决于其public方法,并且允许您调用Parent的私有方法可能会破坏 havoc。因此,为了更好,应该保留private的内容private;) 我明白我的意思。 -
问你的朋友
Parent的私有方法中他/她想要访问的行为是什么?考虑是否可以以接口的形式提取该行为。 -
是的,私有方法只能在类内部访问是正确的,但是有没有办法使用子对象在父类中调用私有方法。
标签: java inheritance private