Junior
Mi az az 'init' blokk és hogyan használják a Kotlin nyelvben?
sobes.tech MI
Válasz az MI-től
A init blokk egy osztály inicializálója Kotlinban. Az osztály példányának létrehozásakor fut le, a konstruktor (elsődleges vagy másodlagos) hívása után és az osztály tulajdonságainak deklarálása előtt. Olyan kód végrehajtására szolgál, amely szükséges az objektum helyes inicializálásához.
Jellemzők:
- Egy osztályban több
initblokk is lehet. - Az
initblokkok a deklarálásuk sorrendjében futnak le az osztály törzsében. - Általában a konstruktor bemeneti paramétereinek ellenőrzésére, számítások végrehajtására vagy az objektum kezdeti állapotának beállítására használják.
Példa:
class Person(name: String) {
val formattedName: String
init {
// Bemeneti adatok ellenőrzése
require(name.isNotBlank()) { "Név nem lehet üres" }
// Adatok formázása belső használatra
formattedName = name.trim().toUpperCase()
}
init {
// További inicializációs logika, ha szükséges
println("Person példány inicializálása névvel: $formattedName")
}
}