Junior
Kas ir 'init' bloks un kā tas tiek izmantots Kotlin valodā?
sobes.tech AI
Atbilde no AI
init bloks ir klasės inicializators Kotlin'e. Jis vykdomas kuriant klasės egzempliorių, po konstruktoriaus (pagrindinio ar antraeilio) iškvietimo ir prieš deklaruojant klasės savybes. Naudojamas vykdyti kodą, kuris yra būtinas objekto teisingai inicializacijai.
Savybės:
- Klasėje gali būti keli
initblokai. initblokai vykdomi jų deklaravimo tvarka klasės kūne.- Paprastai naudojami patikrinti konstruktoriaus įėjimo parametrus, atlikti skaičiavimus arba konfigūruoti pradinę objekto būseną.
Pavyzdys:
class Person(name: String) {
val formattedName: String
init {
// Įėjimo duomenų patikrinimas
require(name.isNotBlank()) { "Vārds nevar būt tukšs" }
// Duomenų formatēšana iekšējai lietošanai
formattedName = name.trim().toUpperCase()
}
init {
// Papildu inicializācijas loģika, ja nepieciešama
println("Person instances inicializācija ar vārdu: $formattedName")
}
}