可在子类中访问的私有字段

时间:2013-06-21 18:27:13

标签: java oop

我有2个班级

class A {
   private int count;
}

class B extends A {
   //need to access count here
}

我可以使用哪些标准方式来访问它?

4 个答案:

答案 0 :(得分:7)

count中制作protected getCount()或添加A方法。

答案 1 :(得分:1)

您可以将您的字段声明为protected,然后所有子类和包本地类都可以访问它。

如果每个人都可以看到这个字段,你也可以拥有getter / setter(一般做法)。 然后,您只需调用getCount()方法即可获得计数。

请参阅此处getters/setters example

答案 2 :(得分:0)

class A {
   private int count;

   public int getCount(){
       return count;
   }
}

class B extends A {
   //need to access count here
}

答案 3 :(得分:-1)

Java阻止将私有字段继承到子类。如果要访问这些字段,您可以使用评估者,即getter方法,也可以将字段访问类型更改为protected或public。同样,protected仅在子类文件位于同一目录中时才有效。如果您将文件放在单独的目录中,则需要将字段访问类型更改为Public