Sobes.tech
Junior — Middle

Milyen esetekben és mire hívják az init inicializációs blokkot Kotlinban?

sobes.tech MI

Válasz az MI-től

Kotlinban az init blokk egy inicializációs blokk, amelyet az osztály példányának létrehozásakor hívnak meg. Kiegészítő inicializációs logikát hajt végre, amely nem fejezhető ki a tulajdonságok inicializálásában.

Ha több init blokk van az osztályban, azok a deklaráció sorrendjében kerülnek végrehajtásra.

Példa:

class User(val name: String) {
    val upperName: String

    init {
        upperName = name.toUpperCase()
        println("Felhasználó létrehozva: $upperName")
    }
}

fun main() {
    val user = User("Alex")
}

Itt, amikor az User objektumot létrehozzák, az init blokk a nevet nagybetűssé alakítja és üzenetet ír ki. Az init blokk az osztály tulajdonságainak elsődleges inicializálása után közvetlenül meghívódik.