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

Лекції

  • Відгуки
  • Про нас
  • CS50
Почати
Почати навчання
Почати навчання
  • Моє навчання
  • Курси
  • Університет
  • Карта квестів
  • Лекції
  • Extension‑функції: синтаксис, receiver, видимість

    Kotlin SELF
    38 рівень, 0 лекція
    Розбираємо extension‑функції в Kotlin: як працює синтаксис fun Type . method (), хто такий receiver і що означає this усередині розширення, які обмеження накладає видимість ( private/ protected), чому за конфлікту перемагає member‑метод і чому розширення вибираються статично (це не override). Усі ідеї ілюструємо мініприкладом CLI для обліку витрат.
    Відкрита
  • Extension‑властивості

    Kotlin SELF
    38 рівень, 1 лекція
    Розбираємо extension‑властивості в Kotlin: чому це не «додавання поля», як працюють get()/ set(), де доречні обчислювані властивості (нормалізація введення, форматування грошей, рядки для виведення), чому небезпечні «важкі» ґетери та побічні ефекти, а також як (і чому — обережно) робити var через зовнішнє сховище на кшталт MutableMap.
    Відкрита
  • operator у Kotlin: plus, compareTo, plusAssign

    Kotlin SELF
    38 рівень, 2 лекція
    Розбираємо операторні домовленості Kotlin: як вирази на кшталт a + b компілятор перетворює на виклик a . plus ( b ); як працює += (через plusAssign або через переприсвоювання); і чому порівняння </ > ґрунтуються на compareTo. На прикладі типу Money обговорюємо дизайн без сюрпризів, читабельність і типові помилки.
    Відкрита
  • Індексатори get/set: obj[i], obj[i, j]

    Kotlin SELF
    38 рівень, 3 лекція
    Розбираємо, як у Kotlin синтаксис квадратних дужок компілятор перетворює на виклики get/ set і навіщо потрібен модифікатор operator. Розглядаємо індексатори в стандартній бібліотеці ( List, MutableList, Map, MutableMap), проєктуємо власні індексатори на прикладі навчального застосунку BudgetBuddy, обговорюємо контракти (fail-fast vs nullable) і варіант із кількома індексами obj[i, j].
    Відкрита
  • Міні‑API поверх розширень і операторів

    Kotlin SELF
    38 рівень, 4 лекція
    Розбираємося, як у Kotlin проєктувати невеликий «шар зручності» поверх предметної області за допомогою extension‑функцій і extension‑властивостей, операторів ( += / +) і точкового infix. На прикладі обліку витрат будуємо міні‑модель ( Expense, Money), накопичувач звіту ( Report) і читабельний сценарій у main. Також обговорюємо критерії «дешево», «без сюрпризів» і «за назвою видно сенс», а ще типові помилки під час перевантаження зручностей.
    Відкрита
Навчання
  • Курси програмування
  • Реєстрація
  • Курс Java
  • Допомога із задачами
  • Ціни
Спільнота
  • Користувачі
  • Статті
  • Форум
  • Чат
  • Історії успіху
  • Дії
Компанія
  • Про нас
  • Контакти
  • Відгуки
  • FAQ
  • Підтримка
JavaRush JavaRush — це інтерактивний онлайн-курс вивчення Java-програмування з нуля. Він містить 1200 практичних задач із перевіркою розв'язання одним клацанням, необхідний мінімум знань із теоретичних основ Java, а ще мотивувальні «фішки», які допоможуть пройти курс до кінця: ігри, опитування, цікаві проєкти й статті про ефективне навчання та кар'єру Java‑девелопера.
Підписуйтесь
Мова інтерфейсу
Русский English
Українська
Програмістами не народжуються © 2026 JavaRush
MastercardVisa
Програмістами не народжуються © 2026 JavaRush