Resumen

Con frecuencia creamos clases cuyo propósito principal es mantener los datos. En una clase de este tipo, algunas funciones de funcionalidad y utilidad estándar a menudo se derivan mecánicamente de los datos. En Kotlin, esto se llama una data class y se marca como datos:

data class User(val name: String, val age: Int)

El compilador deriva automáticamente los siguientes miembros de todas las propiedades declaradas en el constructor primario:

  • equals()/hashCode()
  • toString() de la forma "User(name=John, age=42)"
  • componentN() functions correspondiente a las propiedades en su orden de declaración.
  • copy()