Відносини між класами. Наслідування, композиція, агрегація
У програмуванні ти швидко зрозумієш, як важливо не писати зайвий об'єм коду. На щастя, у Java є все необхідне, щоб елегантно «скорочувати». У цій лекції наочно описані відносини між класами: наслідування, композиція, агрегація. Готуйся: буде багато цікавих прикладів.
Принципи інкапсуляції
Інкапсуляція, приховання — це різні поняття чи одне й те саме? На базовому рівні ти вже не раз стикався з інкапсуляцією. Якщо хочеш знати, як «сховати» від користувача складні механізми роботи твоєї програми і залишити на виду лише зручний інтерфейс, радимо уважно прочитати цю лекцію.
Практика використання поліморфізму
Основна перевага поліморфізму — гнучкість. З одного боку, ти можеш працювати з кількома типами даних так, ніби це один тип. З іншого боку, завдяки цьому принципу ти можеш зберігати поведінку об'єктів. Коли тобі знадобиться приведення до єдиного вигляду, а коли — унікальні характеристики? Про це і поговоримо.
Навіщо в Java потрібні інтерфейси
У цій лекції неспішно та докладно описано, що таке інтерфейси і чому вони з’явилися в мові. А ще ти дізнаєшся про популярні інтерфейси в Java. Готуйся, це тема з продовженням!
Різниця між абстрактними класами та інтерфейсами
У цій лекції поговоримо про те, чим абстрактні класи відрізняються від інтерфейсів і розглянемо приклади з поширеними абстрактними класами.
Ми присвятили відмінностям абстрактного класу від інтерфейсу окрему лекцію, оскільки тема дуже важлива. Про різницю між цими поняттями тебе спитають на 90% майбутніх співбесід. Тому обов'язково розберися з прочитаним, а якщо щось не до кінця зрозумієш, почитай додаткові джерела.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ