我的子类中需要一个无参数的构造函数,但是超类已经定义了构造函数

时间:2016-01-23 17:33:38

标签: java constructor subclass superclass

我正在处理Square超级课程。它有一个定义的构造函数,它为 side 取一个double值。我必须创建一个具有no-arg构造函数的子类,将 side 设置为10.如果超类没有no-arg构造函数,它是否可能这样做?
提前谢谢。

public class Square 
{
private double side;

public Square (double s)
{ 
     side = s;
}
}

public class MySquare extends Square
{   
private double area;

 public MySquare(double s){
  super(s);

} }

1 个答案:

答案 0 :(得分:1)

您只需要向子类添加一个无参数构造函数,并使用“超级”方法使用正确的值调用超类构造函数

public class Square {

    private double side;

    public Square(double s) {
        side = s;
    }
}

public class MySquare extends Square {

    private double area;

    public MySquare(double s) {
        super(s);
    }

    public MySquare() {
        super(10);
    }
}