我的问题是,对super()的调用有什么作用?
它调用的默认构造函数
java.lang.Object。要回答您似乎真正提出的问题,请参阅Java语言规范#8.8.9。
8.8.9。默认构造函数
如果一个类不包含构造函数声明,则默认构造函数被隐式声明。顶级类,成员类或本地类的默认构造函数的形式如下:
默认构造函数具有与类(第6.6节)相同的可访问性。
除了在非私有内部成员类中之外,默认构造函数没有形式参数,在默认情况下,默认构造函数隐式声明一个表示该类的立即封闭实例的形式参数(第8.8.1节,第15.9.2节,第15.9.3节)
)。默认构造函数没有throws子句。
如果要声明的类是原始类
Object,则默认构造函数的主体为空。否则,默认构造函数将简单地调用不带参数的超类构造函数。
注意最后一段。



