我创建了 Rectangle 类的子类,但我只能返回超类的 x 和 y 的默认值

问题描述

我正在做一个学校项目,我需要将 Java 的SRC_URI += "git://server/produc/kernel-modules;protocol=ssh;branch=master;name=my_modules;destsuffix=${S}/my_modules" 类扩展为一个名为 Rectangle 的子类;子类有额外的变量,包括 MyRectanglewidth,当我使用点运算符打印这些值时,我会在输出中得到正确的数字。但是,当我尝试对 height 对象的 xy 值执行相同操作时,我总是最终获得认的 MyRectanglex 值(0 和 0) 即使我通过构造函数中的参数传递不同的值。我认为也许在我的子类的构造函数重命名参数,然后将这些新参数的值分配给超类的 yx 变量可以解决问题,但这只会导致错误。 所需的输出(关于 yx)将是: x = 0 y = 0 // x = 5 y = 5 // x = 0 y = 0 // x = -10 y = 3

任何帮助将不胜感激! 这是我的代码

y

解决方法

根据 Rectangle documentation,没有单独接收 x 和 y 的构造函数。

你必须修改你的构造函数来设置它们。例如:

  public MyRectangle(int x,int y,int w,int h,String c) {
     super(w,h);
     this.x = x;
     this.y = y;
     color = c;
  }