我希望类似的东西 protected, ,其中只有一个类实现了 protected 领域和任何子类,它可以访问。

因此,我希望能够宣布一个可变的基类 private, 但仍然能够访问它从一个子类。

也许这是对的非常性质的子类, private, 和/或 protected.

不会像这样的东西存在的Java?

有帮助吗?

解决方案

只有四个访问级别的领域中Java:

  • private
  • 包-私人(默认的没有访问的修改)
  • protected
  • public

protected 将允许子类,其他的类别,在相同的包装,以及成员在类本身的访问 protected 部件。

简短的回答是,有没有办法实现到底是什么是希望的。

为说明这四个访问剂, 访问控制成员的一类Java教程 有更多的具体信息。

其他提示

如果您控制代码库,您始终可以控制使用基类进入包的内容 - 如果它在包中单独使用,则只有子类可以访问除了子类之外要保持私有的成员。

不,没有访问修饰符做到这一点。 protected 修饰符是最接近的修饰符,但它将该字段公开给同一个包中的任何类以及子类(在同一个包中或内)。

不可能。你仍然可以将你的变量声明为私有,然后声明修改变量的公共方法 超类。然后,您可以在变量上调用public方法。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top