#Kata Case classes vs classes en Scala.

En este post te voy a explicar cuál es la diferencia entre las classes y las case classes en Scala.

¿Qué es una case class?

La respuesta corta, son la misma cosa. Una case class no es más que una ayuda del lenguaje para crear classes inmutables de una forma más rápida. Toda la funcionalidad que contiene una case class puede ser escrita con clases tradicionales.

Declaración.

Para declarar una case class debes escribir la palabra reservada case seguida de class. Todos los argumentos que recibe el constructor serán públicos y de tipo val. Puedes agregar métodos adicionales en el cuerpo de la clase o heredar.

Características de una case class.

  • Todos los parámetros del constructor se convertirán en atributos públicos de tipo val.
  • Scala generará el companion object y el método apply automáticamente.
  • Scala generará los métodos copy, equals, toString y hashCode por ti.
Gustavo Sánchez
Últimas entradas de Gustavo Sánchez (ver todo)

Soy especialista en escribir software de calidad. Mediante el uso de marcos de trabajo, técnicas y automatización de procesos he podido reducir los costes operativos de los sistemas de la empresa. Sistemas confiables y adaptables producen clientes felices.