如何在扩展类构造函数中调用抽象类的构造函数

时间:2018-04-16 10:40:11

标签: java class constructor abstract extends

因此,对于我的作业,我必须创建一个具有一些扩展类的抽象类。我被困在一个部分。我似乎无法在课程中的任何地方找到告诉我如何调用抽象类的构造函数。这是我老师的指示。

MyMath's constructor will just call Homework's constructor and again have no arguments.

这是我对抽象构造函数的代码:

public Homework(){
    pagesRead = 0;
    typeHomework = "none";
}

在MyMath类中,我应该在MyMath的构造函数中调用此构造函数,我不知道如何执行此操作,我无法在其他任何课程中找到它。任何帮助表示赞赏:)

1 个答案:

答案 0 :(得分:2)

正如Stultuske已经说过的那样,超类构造函数将在您创建子类对象时自动调用。或者,您可以通过 super()显式调用它。此外,如果你的超类没有默认构造函数,你也必须明确地调用它。

public abstract class Homework
{
  public Homework(int i)
  {
    ...
  }
}

public class MyClass extends Homework
{
  public MyClass()
  {
    super(5);
  }
}