Sobes.tech
Junior

Ce este blocul 'init' și cum este utilizat în limbajul Kotlin?

sobes.tech AI

Răspuns de la AI

Blocul init este un inițializator de clasă în Kotlin. Se execută la crearea unei instanțe a clasei, după apelarea constructorului (atât primar, cât și secundar) și înainte de declararea proprietăților clasei. Este utilizat pentru executarea codului necesar pentru inițializarea corectă a obiectului.

Caracteristici:

  • Poate exista mai multe blocuri init într-o clasă.
  • Blocurile init sunt executate în ordinea în care sunt declarate în corpul clasei.
  • De obicei, sunt folosite pentru verificarea parametrilor de intrare ai constructorului, efectuarea de calcule sau configurarea stării inițiale a obiectului.

Exemplu:

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

    init {
        // Verificarea datelor de intrare
        require(name.isNotBlank()) { "Numele nu poate fi gol" }
        // Formatarea datelor pentru utilizare internă
        formattedName = name.trim().toUpperCase() 
    }

    init {
        // Logica suplimentară de inițializare, dacă este necesară
        println("Inițializarea instanței Person cu numele: $formattedName")
    }
}