Sobes.tech
Junior — Middle

Môžeš uviesť typy delegátov používaných v Kotlin?

sobes.tech AI

Odpoveď od AI

V Kotlinu sa delegátmi sa delegujú implementáciu vlastností alebo správania. Hlavné typy delegátov:

  • Štandardné delegáty:

    • lazy — lenivé vyhodnotenie hodnoty vlastnosti pri prvom prístupe.
    • observable — umožňuje sledovať zmeny hodnoty vlastnosti pomocou spätného volania.
    • vetoable — podobné observable, ale umožňuje zrušiť zmenu hodnoty.
  • Delegáty pre ukladanie vlastností:

    • notNull — vlastnosť, ktorá musí byť inicializovaná pred prvým použitím, inak vyhodí výnimku.
  • Delegáty pre delegovanie rozhraní:

    • Použitie kľúčového slova by na delegovanie implementácie rozhrania inému objektu.

Príklad použitia lazy:

val lazyValue: String by lazy {
    println("Výpočet hodnoty")
    "Hello"
}

Týmto spôsobom umožňujú delegáti v Kotlinu pohodlne spravovať správanie vlastností a delegovať implementáciu.