Sobes.tech
Junior

Welke variabelen kunnen worden gebruikt in een data class?

sobes.tech AI

Antwoord van AI

In een data class kunnen worden gebruikt:

  • val (alleen-lezen eigenschap): De eigenschap wordt geïnitialiseerd bij het maken van het object en kan daarna niet worden gewijzigd. Het maakt deel uit van de automatisch gegenereerde methoden (equals(), hashCode(), toString(), copy).
  • var (wijzigbare eigenschap): De eigenschap kan worden gewijzigd na het maken van het object. Het maakt ook deel uit van de gegenereerde methoden.
  • Eigenschappen gedeclareerd in de klasse body: Deze eigenschappen maken geen deel uit van de hoofdkenmerken van de data class en worden niet betrokken bij de generatie van standaardmethoden.

Voorbeeld:

data class User(
    val id: Int, // alleen-lezen, deel van de hoofdkenmerken
    var name: String, // wijzigbaar, deel van de hoofdkenmerken
    val creationTime: Long = System.currentTimeMillis() // alleen-lezen, met standaardwaarde, deel van de hoofdkenmerken
) {
    val isAdmin: Boolean = false // alleen-lezen, geen deel van de hoofdkenmerken, wordt niet opgenomen in equals/hashCode/toString
}