我无法修复此错误。有人可以帮忙吗?我的提示和代码发布在下面。
编写一个封装矩形的超类。矩形有两个属性,分别代表矩形的宽度和高度。它具有返回矩形的周长和面积的方法。这个类有一个子类,封装了一个平行六面体或盒子。平行六面体有一个矩形作为它的底,另一个属性是它的长度。它有两种计算和返回其面积和体积的方法。您还需要包含一个客户端类来测试这两个类。
public class Rectangle1
{
protected double width;
protected double height;
public Rectangle1(double width, double height){
this.width = width;
this.height = height;
}
public double getWidth(){
return width;
}
public void setWidth(double width) {
this.width = width;
}
public double getHeight(){
return height;
}
public void setHeight(double height){
this.height = height;
}
public double getArea(){
return width * height;
}
public double getPerimeter(){
return 2 * (width + height);
}
}
public class Box extends Rectangle1 {
protected double length;
public Box(double length){
this.length = length;
}
public double getLength(){
return length;
}
public void setLength(double length){
this.length = length;
}
public double getVolume(){
return width * height * length;
}
}
public class TestRectangle {
public static void main(String[] args) {
Rectangle1 rectangle = new Rectangle1(2,4);
Box box = new Box(5);
System.out.println("\nA rectangle " + rectangle.toString());
System.out.println("The area is " + rectangle.getArea());
System.out.println("The perimeter is " +rectangle.getPerimeter());
System.out.println("The volume is " + box.getVolume());
}
}
错误在
public Box(double length){
this.length = length;
}
Eclipse IDE中的错误信息如下:
隐式超级构造函数
Rectangle1()
未定义。必须显式调用另一个构造函数。
当我尝试运行它时,它给了我:
线程“main”中的异常:未解决的编译问题:未定义
java.lang.Error
隐式超级构造函数。Rectangle1()
必须显式调用另一个构造函数
at Box.<init>(Box.java:4)
at TestRectangle.main(TestRectangle.java:7)
有人可以告诉我如何解决这个错误吗?