я работал на SCJP6 отвалы, когда я нашел это запутанное упражнение:почему компиляция не выполняется для этого примера
С учетом классов, определенное в двух разных файлах:
package packageA;
public class Message {
String getText() { return “text”; }
}
И:
package packageB;
public class XMLMessage extends packageA.Message {
String getText() { return “<msg>text</msg>”;}
public static void main(String[] args) {
System.out.println(new XMLMessage().getText());
}
}
Каков результат выполнения XMLMessage.main?
A. text
B. Compilation fails.
C. <msg>text</msg>
D. An exception is thrown at runtime.
Ответ был: B, но я не понимаю, почему; Я думаю, что ответ должен быть C.
Ну вы * попробуйте * скомпилировать образец кода? –
Вы пытались запустить его? –
Вы уверены, что нет '@ Override' где-то в строке 2.5? Потому что он компилирует и печатает ' текст '. –
zapl