Volver a la página principal
lunes 14 octubre 2024
5

Cómo usar trait en Scala

Un trait en Scala es una unidad de código reutilizable similar a las interfaces en otros lenguajes, pero con la capacidad de contener implementaciones de métodos. Los traits permiten definir y compartir funcionalidades entre clases de manera flexible y eficiente, ya que una clase puede extender múltiples traits.

¿Qué es un trait en Scala?

Un trait es un tipo que define métodos abstractos y concretos que pueden ser heredados por otras clases. A diferencia de una clase abstracta, un trait puede ser mezclado (mixin) con múltiples clases, lo que permite una forma poderosa de composición en Scala. Además, un trait no puede tener parámetros de constructor.

Ejemplos de uso

Definir un trait y usarlo en una clase

trait Volador {
  def volar(): String = "Estoy volando"
}

class Pajaro extends Volador

val pajaro = new Pajaro()
println(pajaro.volar()) // Salida: Estoy volando

Definir métodos abstractos en un trait

trait Animal {
  def sonido: String // método abstracto
}

class Perro extends Animal {
  def sonido: String = "Ladrar"
}

val perro = new Perro()
println(perro.sonido) // Salida: Ladrar

Mezclar múltiples traits

trait Caminante {
  def caminar(): String = "Estoy caminando"
}

class Gato extends Animal with Caminante {
  def sonido: String = "Maullar"
}

val gato = new Gato()
println(gato.sonido)   // Salida: Maullar
println(gato.caminar()) // Salida: Estoy caminando

Referencia

Para más detalles, consulta la documentación oficial de Scala.

Etiquetas:
scala
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer