Por Lucas Trubiano - Data Engineer | Profesor y Consultor

Clases simples

En Scala, las clases son la base de la programación orientada a objetos. Puedes crear clases para modelar objetos y definir comportamientos. Las clases pueden tener atributos y métodos.

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

	def saludar2 = println(s"Hola, mi nombre es $nombre y tengo $edad años.")
}

val persona = new Persona("Juan", 30)
persona.saludar()

Modificadores de acceso y mutabilidad

  1. Modificador de acceso:
  2. Mutabilidad:

Ejemplos:

Propiedades (con getters y setters)

En Scala, puedes definir propiedades con acceso y modificación controlados mediante los métodos get y set. Esto te permite encapsular la lógica de acceso y modificación de los atributos de la clase.

class Cuenta {
  private var _saldo: Double = 0.0
  
  def saldo: Double = _saldo
  
  def depositar(monto: Double): Unit = {
    _saldo += monto
  }
  
  def retirar(monto: Double): Unit = {
    _saldo -= monto
  }
}

val cuenta = new Cuenta
cuenta.depositar(100.0)
println(s"Saldo actual: ${cuenta.saldo}")

Las importaciones pueden estar en cualquier lugar

En Scala, puedes realizar importaciones en cualquier lugar dentro de tu código, no necesariamente al principio del archivo. Esto permite importar solo lo necesario en contextos específicos.

object MiApp {
  def main(args: Array[String]): Unit = {
    import java.util.Date
    val fecha = new Date
    println(fecha)
  }
}