为什么我们在构造函数中调用super()

0 java constructor super

我们有这样的构造函数:

public statusArea()     
{           
   super();         
   add(pageIdentifier);     
}
Run Code Online (Sandbox Code Playgroud)

我们为什么要打电话super呢?

小智 5

来自Oracle文档

使用super(),可以调用超类无参数构造函数.使用super(参数列表),将调用具有匹配参数列表的超类构造函数.

注意:如果构造函数未显式调用超类构造函数,则Java编译器会自动插入对超类的无参数构造函数的调用.如果超类没有无参数构造函数,则会出现编译时错误.对象确实有这样的构造函数,因此如果Object是唯一的超类,则没有问题.