这个java代码有什么问题(快速)

这个java代码有什么问题(快速),java,Java,我不知道出了什么问题以及如何解决。我想这是因为我把sideLength设置为initialLength,它基本上是一样的 在grow方法中,由于要更新sideLength的值,因此还应更新area的值: 私有int区域是冗余的。您可以从getArea返回sideLength*sideLength。没有任何错误!它可能不会产生你所期望的结果,但你还没有具体说明你所期望的,它所产生的,以及为什么你会认为会发生这种情况。我不明白为什么这会被否决,我投了赞成票!。目标是让getArea方法始终返回边长的

我不知道出了什么问题以及如何解决。我想这是因为我把sideLength设置为initialLength,它基本上是一样的

在grow方法中,由于要更新sideLength的值,因此还应更新area的值:


私有int区域是冗余的。您可以从getArea返回sideLength*sideLength。没有任何错误!它可能不会产生你所期望的结果,但你还没有具体说明你所期望的,它所产生的,以及为什么你会认为会发生这种情况。我不明白为什么这会被否决,我投了赞成票!。目标是让getArea方法始终返回边长的平方。更新边长时,还需要更新返回的区域。我承认,代码不是最漂亮的,但它在功能上是正确的。
public class Square {

  private int sideLength;

  private int area;

  public Square(int initialLength) {

    sideLength = initialLength;

    area = sideLength * sideLength;

  }

  public int getArea() { return area; }

  public void grow() { sideLength = 2 * sideLength; }

}
public void grow() {
    sideLength = 2 * sideLength;
    area = sideLength * sideLength;
}