JavaRush
AI Academy
new
Акція
Університет
Java FullStack
Python FullStack
AI Native Developer
new
Навчання
Курси
Задачі
Опитування
Ігри
Допомога
Графік стусанів
Стажування
Спільнота
Користувачі
Форум
Чат
Статті
Історії успіху
Дії
Відгуки
Передплати
Світла тема

Лекції

  • Відгуки
  • Про нас
  • CS50
Почати
Почати навчання
Почати навчання
  • Моє навчання
  • Курси
  • Університет
  • Карта квестів
  • Лекції
  • Primary constructor як API класу: параметри, властивості й значення за замовчуванням

    Kotlin SELF
    31 рівень, 0 лекція
    Розбираємося, чому primary constructor у Kotlin — це публічний контракт класу: чим параметр конструктора відрізняється від властивості (і коли потрібен val/ var), як проєктувати зручний API для створення обʼєктів на прикладі Expense, навіщо використовувати значення за замовчуванням та іменовані аргументи, а також як свідомо обирати мутабельність, щоб типи залишалися зрозумілими й безпечними.
    Відкрита
  • init-блок: нормалізація та підготовка стану

    Kotlin SELF
    31 рівень, 1 лекція
    Розбираємося, як працює init-блок у Kotlin: коли він виконується, як використати його для нормалізації введення ( trim(), lowercase()), підготовки похідних властивостей (наприклад, summary), фіксації інваріантів через require(...), а також як читати порядок виконання кількох init-блоків. Наприкінці — типові помилки проєктування й практичні поради для консольних застосунків.
    Відкрита
  • Secondary constructors і делегування this(...) у Kotlin

    Kotlin SELF
    31 рівень, 2 лекція
    Розбираємося, навіщо в Kotlin потрібні вторинні конструктори, як працює делегування через this (...), чому важливо зберігати єдиний шлях ініціалізації через primary-конструктор і init, а також як перетворити secondary constructors на «адаптери» для сирого введення (рядки, CSV, часткові дані) на практичному кейсі Expense.
    Відкрита
  • Порядок ініціалізації: властивості → init → тіло secondary constructor

    Kotlin SELF
    31 рівень, 3 лекція
    Розбираємо, у якому порядку Kotlin створює об’єкт: спочатку виконуються ініціалізатори властивостей ( val/ var), потім init-блоки (згори вниз), і лише після цього — тіло secondary constructor. На прикладах із println(), require() і делегуванням : this(...) вчимося правильно «лагодити» вхідні дані перед перевірками та уникати прихованої важкої роботи в ініціалізаторах.
    Відкрита
  • Передумови та перевірка стану: require і check

    Kotlin SELF
    31 рівень, 4 лекція
    Розбираємо підхід fail-fast у Kotlin і два ключові інструменти валідації: require(...) для вхідних аргументів (із IllegalArgumentException) та check(...) для коректності стану (із IllegalStateException). На практичних прикладах (класи Expense і ExpenseTracker) показуємо, де ставити перевірки, як писати корисні повідомлення у форматі «очікували → отримали» та як акуратно перехоплювати ці помилки на рівні main.
    Відкрита
Навчання
  • Курси програмування
  • Реєстрація
  • Курс Java
  • Допомога із задачами
  • Ціни
Спільнота
  • Користувачі
  • Статті
  • Форум
  • Чат
  • Історії успіху
  • Дії
Компанія
  • Про нас
  • Контакти
  • Відгуки
  • FAQ
  • Підтримка
JavaRush JavaRush — це інтерактивний онлайн-курс вивчення Java-програмування з нуля. Він містить 1200 практичних задач із перевіркою розв'язання одним клацанням, необхідний мінімум знань із теоретичних основ Java, а ще мотивувальні «фішки», які допоможуть пройти курс до кінця: ігри, опитування, цікаві проєкти й статті про ефективне навчання та кар'єру Java‑девелопера.
Підписуйтесь
Мова інтерфейсу
Русский English
Українська
Програмістами не народжуються © 2026 JavaRush
MastercardVisa
Програмістами не народжуються © 2026 JavaRush