Java-构造函数未定义
我有一个抽象类GeometricObject,它由一个基类矩形扩展。在超类中,我提供了两个构造函数:Java-构造函数未定义,java,constructor,super,Java,Constructor,Super,我有一个抽象类GeometricObject,它由一个基类矩形扩展。在超类中,我提供了两个构造函数: public abstract class GeometricObject { private String color = "white"; private boolean filled; private java.util.Date dateCreated; /** Construct a default geometric object */ protected
public abstract class GeometricObject {
private String color = "white";
private boolean filled;
private java.util.Date dateCreated;
/** Construct a default geometric object */
protected GeometricObject() {
dateCreated = new java.util.Date();
}
/** Construct a geometric object with color and filled value */
protected GeometricObject(String color, boolean filled) {
dateCreated = new java.util.Date();
this.color = color;
this.filled = filled;
}
在矩形类中,我创建了另一个构造函数,它应该调用GeometricObject参数构造函数。如果我错了,请纠正我,但这是为矩形对象指定“颜色”和“填充”值的正确方法
public class Rectangle extends GeometricObject implements Comparable<Rectangle>{
private double width;
private double height;
public Rectangle() {
}
**public Rectangle(double width, double height, String color, boolean filled) {
super(color, filled);
this.width = width;
this.height = height;
}**
public类矩形扩展GeometricObject{
私人双宽度;
私人双高;
公共矩形(){
}
**公共矩形(双宽、双高、字符串颜色、布尔填充){
超级(彩色,填充);
这个。宽度=宽度;
高度=高度;
}**
但是,Eclipse在super(color,filled)语句旁边给出了以下错误:
构造函数GeometricObject(字符串,布尔值)未定义
我缺少什么?构造函数调用看起来不错,我在Eclipse中尝试过,它编译时没有任何错误。但是,由于Rectangle类实现了Comparable,我们需要重写
compareTo
方法,如下所示:
@Override
public int compareTo(Rectangle o) {
// TODO Auto-generated method stub
return 0; //should be replaced by comparison logic
}
这里似乎很好-。你能构造一个吗?难以置信。在你的评论之后,我添加了一个新的测试类并使用构造函数创建了一个实例,然后错误突然消失了。神秘的IDE…谢谢!我删除了可比方法只是为了简单,谢谢你提到它!在你的评论之后,我添加了一个新的测试类并创建了一个实例使用构造函数创建了一个实例,突然错误消失了。神秘的IDE…谢谢!