Вызывает ли конструктор супер в этом случае избыточным? [Дубликат]
На этот вопрос уже есть ответ:
Разве нет необходимости помещать super () в конструктор? 6 ответов Я всегда думал, что при создании объекта с подклассом нам нужно явно использоватьsuper(arguments list)
чтобы вызвать конструктор суперкласса. Однако я провел эксперимент и понял, что дажебе используяsuper()
, конструктор суперкласса будет вызываться автоматически. Это правда
Если это правда, когда этоsuper()
избыточно, а когда нет?
class Parent
{
public Parent()
{
System.out.println("Super Class");
}
}
class Child extends Parent
{
public Child()
{
super(); //Is this redundant?
System.out.println("Sub Class");
}
}
public class TestClass
{
public static void main(String[] args)
{
new Child();
}
}
ВЫХО ( super();
в детском классе):
Super Class
Sub Class
ВЫХО (Бе super();
в детском классе):
Super Class
Sub Class