Junior — Middle
Wat zijn de verschillen tussen de sleutelwoorden const val en val in Kotlin?
sobes.tech AI
Antwoord van AI
In Kotlin, het sleutelwoord val staat voor een onveranderlijke variabele (alleen-lezen), waarvan de waarde één keer kan worden toegewezen tijdens initialisatie, maar de waarde zelf kan tijdens runtime worden berekend.
const val is een compile-tijd constante, die van een primitief type of string moet zijn en moet worden geïnitialiseerd met een waarde die bekend is op compile-tijd. Dergelijke constanten kunnen bijvoorbeeld worden gebruikt in annotaties of als parameters die constanten vereisen.
Belangrijkste verschillen:
const valis altijd een statische constante, toegankelijk op klasseniveau (alleen in objecten of op topniveau).valis een gewone onveranderlijke eigenschap, die dynamisch kan worden berekend.
Voorbeeld:
const val MAX_COUNT = 10 // compile-tijd constante
val currentTime = System.currentTimeMillis() // waarde berekend tijdens runtime