Sobes.tech
Junior

Cum se creează o variabilă statică în Kotlin?

sobes.tech AI

Răspuns de la AI

În Kotlin nu există un echivalent direct pentru cuvântul cheie static din Java. În schimb, se folosesc:

  • companion object: Pentru a crea membri "statici" ai clasei (câmpuri și metode). Aceștia sunt legați de clasă, nu de o instanță specifică.
  • Funcții și proprietăți la nivel de pachet: Declarate la nivel superior în fișier (Top-level declarations) și accesibile din orice loc fără a fi nevoie de calificare cu numele clasei.

Exemplu cu companion object:

class MyClass {
    companion object {
        const val TAG = "MyClass" // Constante la timpul de compilare (ca final static în Java)
        var instanceCount = 0 // Variabilă legată de clasă
    }

    init {
        instanceCount++
    }
}

Exemplu cu proprietăți de nivel de pachet:

// În fișierul MyGlobals.kt
const val GLOBAL_CONST = "This is a global constant"
var globalCounter = 0

fun incrementGlobalCounter() {
    globalCounter++
}

Diferențe și alegere:

  • companion object este potrivit pentru membri legați logic de clasă.
  • Membrii de nivel de pachet sunt utili pentru utilitare generale, constante sau variabile care nu sunt legate de o clasă specifică.
  • Pentru constante la timpul de compilare, folosiți const val în interiorul companion object sau ca declarație de pachet.