Sobes.tech
Junior

Kā izveidot statisko mainīgo Kotlin?

sobes.tech AI

Atbilde no AI

Kotlin nav tieša ekvivalenta Java static atslēgas vārdam. Tā vietā tiek izmantotas:

  • companion object: Lai izveidotu "statiskos" klases locekļus (laukus un metodes). Tie ir saistīti ar klasi, nevis ar konkrētu eksemplāru.
  • Funkcijas un īpašības pakotnes līmenī: Deklarētas augstākajā līmenī (Top-level declarations) un pieejamas no jebkuras vietas bez nepieciešamības kvalificēt ar klases nosaukumu.

Piemērs ar companion object:

class MyClass {
    companion object {
        const val TAG = "MyClass" // Konstante kompilācijas laikā (kā final static Java)
        var instanceCount = 0 // Mainīgais, saistīts ar klasi
    }

    init {
        instanceCount++
    }
}

Piemērs ar pakotnes īpašībām:

// MyGlobals.kt failā
const val GLOBAL_CONST = "This is a global constant"
var globalCounter = 0

fun incrementGlobalCounter() {
    globalCounter++
}

Atšķirības un izvēle:

  • companion object ir piemērots loģiski saistītiem ar klasi locekļiem.
  • Pakotnes locekļi ir noderīgi kopīgām utilītfunkcijām, konstantiem vai mainīgajiem, kas nav saistīti ar konkrētu klasi.
  • Kompilācijas laikā konstantiem izmantojiet const val iekš companion object vai kā pakotnes deklarāciju.