所以基本上我有这个问题:1)Square,Rectangle的一个子类,包含一个构造函数(带有边长度的参数)和调用Rectangle类的方法来确定正方形的周长和面积的方法。
到目前为止,我有这个方形类
class sqaure extends rectangle
{
public Square(double size)
{
super(size, size)
}
}
这适用于矩形类
class rectangle extends Shape
{
private double length;
private double width;
public rectangle (double length, double width)
{
this.length = length;
this.width = width;
}
double area()
{
return length * width;
}
double perimeter()
{
return 2.0 * (width + length);
}
}
我需要帮助,因为它说我需要调用矩形类的方法来确定正方形的周长和面积。
谢谢
首先,按照惯例,所有类名都需要大写。
此外,您不需要编写任何其他代码:只需初始化正方形并在其上调用方法即可。
Square s = new Square(50d);
double area = s.area();
double perimeter = s.perimeter();
或者只是override
面积和周长方法,并在 square 类中返回超级方法:
double area(){
return super.area();
}
double perimeter(){
return super.perimeter();
}
如果需要专门为 Square 类执行额外的计算,后者很有用,但在此示例中,您不需要它。
首先,您应该尝试遵循 java 类的命名标准,以大写字母开头。
Square mySquare = new Square(10.0);
double theArea = mySquare.area();
double thePerimeter = mySquare.perimeter();
这些对area()
和perimeter()
的调用正在使用Rectangle
中的实现,仅仅是因为它们没有在Square
中被覆盖。