¿Ya dominas lo básico? Un curso estructurado de Scala es la vía rápida para dar el salto.
Ver cursos de Scala en UdemyEnlace de afiliado. No te cuesta nada extra.
- 01Preparar el entorno (lo que necesitas)
- 02Tu primera salida (println)
- 03Variables (val y var)
- 04Anotaciones de tipo y tipos básicos
- 05Condicionales (la expresión if)
- 06Repetir (la expresión for)
- 07Escribir tu propia función
- 08Repetir (el bucle while)
- 09Trabajar con listas (List)
- 10Trabajar con diccionarios (Map)
- 11Clases (orientación a objetos)
- 12case class (clases para datos)
- 13Herencia y traits
- 14Pattern matching (la expresión match)
- 15El tipo Option (seguridad frente a null)
- 16Funciones de orden superior: map y filter
- 17object (objetos únicos)
- 18Textos e interpolación de cadenas
- 19for comprehensions (construir colecciones con yield)
- 20[Proyecto] Construye un mini sistema de inventario
Clases (orientación a objetos)
En esta lección agruparás datos y comportamiento en un mismo molde.
En Scala los parámetros del constructor se escriben junto al nombre de la clase: class Animal(val name: String). La palabra val delante del parámetro hace que además se convierta en un campo accesible desde fuera. Los métodos se declaran con def dentro de las llaves.
El código de ejemplo define un animal con nombre y un método que devuelve una frase.
Comparado con Java, aquí desaparece un montón de código repetido: no hay que declarar el campo, ni escribir el constructor, ni generar el getter. Una sola línea hace las tres cosas. Si quitas el val del parámetro, sigue siendo utilizable dentro de la clase pero deja de ser accesible desde fuera, lo que es una forma cómoda de decidir qué se expone.
Fíjate también en el new: en Scala 2 es obligatorio al crear una instancia de una class normal. Scala 3 permite omitirlo, y con las case class de la lección siguiente nunca hace falta.
🧪 Este sitio no puede compilar ni ejecutar Scala directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).
