Sobes.tech
Junior — Middle

Czy możesz wymienić typy delegatów używanych w Kotlin?

sobes.tech AI

Odpowiedź od AI

W Kotlinie delegaty są używane do delegowania implementacji właściwości lub zachowań. Główne typy delegatów:

  • Standardowe delegaty:

    • lazy — leniwe obliczanie wartości właściwości przy pierwszym odwołaniu.
    • observable — umożliwia śledzenie zmian wartości właściwości za pomocą callbacka.
    • vetoable — podobne do observable, ale pozwala na anulowanie zmiany wartości.
  • Delegaty do przechowywania właściwości:

    • notNull — właściwość, która musi być zainicjalizowana przed pierwszym użyciem, w przeciwnym razie wyrzuci wyjątek.
  • Delegaty do delegowania interfejsów:

    • Użycie słowa kluczowego by do delegowania implementacji interfejsu innemu obiektowi.

Przykład użycia lazy:

val lazyValue: String by lazy {
    println("Obliczanie wartości")
    "Hello"
}

W ten sposób delegaty w Kotlinie pozwalają wygodnie zarządzać zachowaniem właściwości i delegować implementację.