【发布时间】:2013-09-12 02:34:48
【问题描述】:
我了解到,在构造对象的时候,super() 会被调用,不管你是否写在构造函数中。但我注意到在某些代码中,super() 方法被显式调用。我应该在构造函数中隐式还是显式调用super()?有什么不同?
【问题讨论】:
-
没关系,除非您计划将参数传递给超类的构造函数。如果您忽略它,编译器会为您插入它。如果超类中没有默认 c'tor,那么您必须使用传递给它的适当参数显式调用它。
-
感谢您的回答。我正在阅读 Exception 类的源代码,当我发现 Excetion 的默认构造函数内部只有一个 super() 时。我很困惑。现在我明白了。
标签: java constructor super