关于访问受保护的方法

时间:2012-08-09 09:06:07

标签: java public protected

有一个名为demo的项目,它由两个包组成,名为aa和bb。

在包aa中,我有一个公共类One,它有一个带有protected作为修饰符的方法。

现在在另一个包bb中,我有一个公共类2,它想要访问一个类一个受保护的方法。

请告知如何做到这一点..!

4 个答案:

答案 0 :(得分:3)

protected方法仅在同一个类中可见,同一个包中的类和扩展它的类

答案 1 :(得分:3)

在继承之前,您无法从另一个包中的类访问受保护的成员/方法。

您有以下选项:

  1. public Class Two extends One
  2. 在同一个包中添加第一和第二类。

答案 2 :(得分:1)

受保护的方法仅在派生类或同一包中的类中可见 由于受保护的方法属于不同的类,因此您有两种选择:

  1. 将访问说明符更改为public
  2. 使用protected说明符从类中派生using类:class Two extends One
  3. 还有第三种选择,即在第二类中重现受保护的方法。这是推荐,并不总是可行 - 例如,如果该方法处理对第一类私有的成员。

答案 3 :(得分:0)

Jigar和S.L Barth所说的是正确的,即它只能从同一包中的派生类或类中访问。

有关更多信息,官方Java文档非常清楚地说明了方法的可访问性和可见性。

Controlling Access to Members of a Class