— Ну, привіт, Аміго! Хороші новини — я закінчую роботу над Найточнішим-провісником!

— Круто, а що він робить? Він скаже, коли я стану крутим програмістом?

— Ну, не поспішай, юний роботе! Так далеко я не заглядав. Але я вже знаю, що…

— Що?!

— … Ти прийшов до мене з питаннями на теми, які вивчив цього тижня. Тому заздалегідь підготував тобі додаткові матеріали: вони допоможуть тобі розібратися.

Практика використання поліморфізму

Головна перевага поліморфізму - гнучкість. З одного боку, ти можеш працювати з кількома типами даних так, наче це один тип. З іншого боку, завдяки цьому принципу ти можеш зберігати поведінку об'єктів. Коли тобі стане в нагоді приведення до єдиного вигляду, а коли — унікальні характеристики? Про це і поговоримо.

Як влаштований механізм перевизначення методів

Ти вже знайомий із перевантаженням методів. Настав час дізнатися про перевизначення методів. Це допоможе тобі в роботі, коли потрібно, щоб загальний метод виконував різні дії в залежності від класу, в якому його викликали. Все можливо! Головне – знати як :)

Для чого в Java потрібні інтерфейси

У цій лекції без поспіху та Докладно описано, що таке інтерфейси і чому вони з'явилися мовою. А ще ти дізнаєшся про популярні інтерфейси в Java. Приготуйся, це тема з продовженням!

Дефолтні методи в інтерфейсах

Кожна версія Java відрізняється від попередніх. У восьмій з'явилося поняття дефолтних методів в інтерфейсах. Завдяки цьому ти можеш визначати методи за замовчуванням (default) та реалізовувати їх усередині інтерфейсу. Приклади та пояснення знайдеш у цій лекції.

Абстрактні класи в Java на конкретних прикладах

Ти познайомився з поняттям абстрактних класів і вже знаєш, що вони є своєрідними «заготівлями» твоїх майбутніх класів. Але чи обов'язково всі методи такого класу мають бути абстрактними? І все-таки, чому в Java немає множинного успадкування класів? Ось тобі «наведення» від найточнішого провісника: матеріал з цієї лекції краще підготує тебе до наступного рівня навчання.