在Java中,有没有办法让一个访问修饰符基本上是私有的,除了这个方法可以被孩子访问?我正在开发一个程序,其中有一些类别的孩子需要的方法(并且希望避免重复),但我不想公开它,因为我不希望这些幼稚的对象实例化的类可以访问这些方法。
如果没有这样的话,你们会建议在这个问题上实现最佳实践?
最好在同一个套餐中 - protected
无法满足此要求。
答案 0 :(得分:8)
这是protected
关键字的用途。
https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
protected修饰符指定只能在自己的包中访问该成员(与package-private一样),此外,还可以在另一个包中通过其类的子类访问。
编辑:另请注意,Java Reflection API允许任何类访问任何类的成员,无论修饰符如何。