July 26, 2024

En el mundo de la programación orientada a objetos, Scala ofrece un sólido soporte para la creación de clases, que son la piedra angular de la construcción de estructuras de software robustas y reutilizables. Las clases en Scala nos permiten definir objetos con atributos y comportamientos, lo que facilita la organización del código y la creación de abstracciones.

En Scala, una clase se define utilizando la palabra clave class seguida del nombre de la clase y un conjunto de parámetros opcionales. Veamos un ejemplo básico de cómo se ve la definición de una clase en Scala:

class Persona(nombre: String, edad: Int) {
  // Cuerpo de la clase
}

En este ejemplo, hemos definido una clase llamada Persona con dos parámetros: nombre de tipo String y edad de tipo Int. El cuerpo de la clase, que se encuentra dentro de las llaves {}, contendrá los atributos, métodos y demás miembros de la clase.

Atributos de clase:

Los atributos de una clase en Scala se definen utilizando la palabra clave val o var, seguida del nombre del atributo y su tipo. La diferencia entre val y var radica en la mutabilidad del atributo. Un atributo definido con val es inmutable (es decir, su valor no puede cambiar una vez asignado), mientras que un atributo definido con var es mutable (puede cambiar su valor).

class Persona(nombre: String, edad: Int) {
  val nombreCompleto: String = nombre // atributo inmutable
  var edadActual: Int = edad // atributo mutable
}

En este ejemplo, hemos definido dos atributos en la clase Persona: nombreCompleto como un atributo inmutable que toma el valor del parámetro nombre, y edadActual como un atributo mutable que toma el valor del parámetro edad.

Métodos de clase:

Los métodos son funciones definidas dentro de una clase y proporcionan el comportamiento de la clase. Pueden acceder y manipular los atributos de la clase, así como realizar otras operaciones. Veamos un ejemplo de cómo definir un método en una clase:

class Persona(nombre: String, edad: Int) {
  def saludar(): Unit = {
    println(s"Hola, mi nombre es $nombre y tengo $edad años.")
  }
}

En este ejemplo, hemos definido un método llamado saludar que imprime un mensaje utilizando los valores de los atributos nombre y edad.

Creación de instancias de clase:

Una vez definida una clase, podemos crear instancias u objetos de esa clase utilizando el operador new. Veamos un ejemplo de cómo crear una instancia de la clase Persona:

val persona1 = new Persona("Miguel", 30)

En este ejemplo, hemos creado una instancia de la clase Persona llamada persona1 con los valores “Juan” y 30 para los parámetros nombre y edad, respectivamente.

Leave a Reply

Your email address will not be published. Required fields are marked *