在超级/子类中设置/获取私有字段的方法

时间:2014-11-24 13:28:56

标签: java subclass private superclass

所以基本上我有一个几何图的超类,它有私有字段,比如长度和宽度。我有一个Rectangle的子类,在构造函数中有一个长度和宽度。

在子类中,我必须包含一个方法来将Rectangle的长度和宽度设置为几何图形的私有字段的长度和宽度。我该怎么做?

由于

编辑:例如:

public class GeometricFigure{
private double length;
private double width;
}

public class Rectangle extends GeometricFigure{
     public Rectangle(int length, int width){}
//set and get methods here to set the private fields to the variables in the parameter
}

2 个答案:

答案 0 :(得分:0)

您可以在超类中创建getter和setter方法,如:

public GeometricFigure(int length, int width)
{
     this.length = length;
     this.width = width;
}

public Rectangle(int length, int width)
{
    super(length, width);
}

你的2个构造函数可能看起来像这样。

答案 1 :(得分:0)

您有几个选择,

  1. 提供超类中的构造函数,它接受宽度和长度。子类将使用它
  2. 在超类中提供setter / getter方法,接受宽度和长度,只需在子类中使用
  3. 否则您无权设置私有字段。 (反思除外)