Sobes.tech
Junior

Čo je blok 'init' a ako sa používa v jazyku Kotlin?

sobes.tech AI

Odpoveď od AI

Blok init je inicializátor triedy v Kotlin. Spúšťa sa pri vytváraní inštancie triedy, po volaní konštruktora (ako primárneho, tak sekundárneho) a pred vyhlásením vlastností triedy. Používa sa na vykonanie kódu, ktorý je nevyhnutný pre správnu inicializáciu objektu.

Vlastnosti:

  • V triede môže byť niekoľko blokov init.
  • Bloky init sa vykonávajú v poradí, v akom sú deklarované v tele triedy.
  • Zvyčajne sa používajú na overenie vstupných parametrov konštruktora, vykonanie výpočtov alebo konfiguráciu počiatočného stavu objektu.

Príklad:

class Person(name: String) {
    val formattedName: String

    init {
        // Kontrola vstupných dát
        require(name.isNotBlank()) { "Meno nemôže byť prázdne" }
        // Formátovanie dát pre interné použitie
        formattedName = name.trim().toUpperCase() 
    }

    init {
        // Dodatočná logika inicializácie, ak je potrebná
        println("Inicializácia inštancie Person s menom: $formattedName")
    }
}