Добрый день. Задачу решил, но есть вопрос. Подскажите почему так правильно, а так нет?
public class Solution {
public static void main(String[] args) {
List<Book> books = new LinkedList<Book>();
books.add(new MarkTwainBook("Tom Sawyer"));
books.add(new AgathaChristieBook("Hercule Poirot"));
System.out.println(books);
}
public static class MarkTwainBook extends Book {
public String title="Tom Sawyer";
public MarkTwainBook(String title) {
super("Mark Twain");
this.title =title;
}
А так не правильно
public MarkTwainBook(String title) {
this.title =title;
super("Mark Twain");
}
И еще эту задачу можно решить через иф, а не только с помощью instanceof. Хотя второй способ более правильный.
БелК в труселях
35 уровень
Добрый день. Задачу решил, но есть вопрос. Подскажите почему так правильно, а так нет? КТО НЕ РЕШИЛ НЕ СМОТРИТЕ ЭТО ЧАСТЬ РЕШЕНИЯ!
Обсуждается
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia VolkovaJava Developer в DXCMaster
13 ноября 2021, 11:50полезный
Птому что вызов родительского конструктора - super(...) - всегда должен быть в самом начале.
+3
БелК в труселях
13 ноября 2021, 12:09
Как я рад Вас снова видеть Ксения. СПАСИБО.
+1
Dmitry TsybankovЭлектромонтёр в Пищевое производство
28 ноября 2021, 15:04
Вот и я, когда загуглил, понял, что вызов конструктора родителя из конструктора наследников нам не объясняли.
0