Saltar a contenido

U4 · Programación orientada a objetos

Leer el resumen

En esta unidad pasas del código suelto a la programación orientada a objetos. Una clase es un molde, y un objeto es cada cosa creada con ese molde. Cada clase tiene atributos, que son sus datos, y métodos, que son lo que sabe hacer. Aprenderás a crear objetos con constructores, a validar los datos al crearlos, y a proteger los atributos con el encapsulamiento, para que nadie los cambie de cualquier manera. También guardarás colecciones de objetos. Y terminas con un proyecto propio.

Pasar del código suelto a clases y objetos: atributos, métodos, constructores, validación, encapsulamiento y colecciones de objetos. Termina con un proyecto personal o en grupo.

Teoría

Antes de empezar: qué debes dominar

  • Clase, objeto, atributo y método.
  • Constructores (principal y alternativos) y valores por defecto.
  • Encapsulamiento: visibilidad y propiedades de solo lectura.
  • Enumerados, sobrecarga y toString/igualdad.
  • Colecciones de objetos y validación con excepciones.

Ejercicios de la unidad

Bloque Ejercicios
U4.1 · Repaso de las unidades 1 a 3 1
U4.2 · POO I (ejercicios 1 al 5) 5
U4.3 · POO II (ejercicios 6 al 10) 5
U4.4 · Robots (parte 1) 2
U4.5 · Robots (parte 2 y reto) 1
U4.6 · Prueba: Cafetera y Taza 2
U4.7 · Juego del ahorcado (grupos) 1
U4.8 · Cambio de rol: explícamelo tú (grupos) 2

Equivalencias de POO en Kotlin

Idea En Kotlin
Constructor principal class Persona(val nombre: String, var edad: Int)
Constructor secundario constructor(...) : this(...)
Propiedad calculada de solo lectura val imc: Double get() = peso / (altura * altura)
Privado private; private set para modificar solo desde dentro
Validar al crear init { require(...) }
Herencia clases open; class B : A()
Clase abstracta / interfaz abstract class / interface
Enumerado enum class Color { BLANCO, NEGRO }
Datos con igualdad por valor data class
Parámetro por defecto fun agregar(cantidad: Int = 200)
Jerarquía cerrada sealed class
Extensión fun List<String>.filtrar(...)

Antes de pasar a los ejercicios

Cuando hayas leído y practicado la teoría, marca la casilla para desbloquear los ejercicios de esta unidad: