Эта программа Java выдает 12 и «Test». Но я не могу понять, почему 12 было напечатано.Странный выход в java 3
// Filename: MyClass.java
public class MyClass {
public static void main(String[] args) {
B b = new B("Test");
}
}
class A {
A() { this("1", "2"); }
A(String s, String t) { this(s + t); }
A(String s) { System.out.println(s); }
}
class B extends A {
B(String s) { System.out.println(s); }
B(String s, String t) { this(t + s + "3"); }
B() { super("4"); };
}
'B (String)' вызывает A() '' '' '' super() 'перед выполнением собственного кода. –
Java 3 ?? Вау ... Во всяком случае; ** отформатируйте свой код **. –
Конструктор по умолчанию суперкласса всегда вызывается, если не указан другой. – matt