🚗 EJERCICIO #2 — Arrays de Objetos en
Java (Gestión de Parking)
Objetivo: Dominar arrays de objetos + null + menú + POO real.
📐 DIAGRAMA UML (ASCII)
Antes de programar, en hoja suele aparecer algo así:
┌──────────────────────────────┐
│ Coche │
├──────────────────────────────┤
│ - matricula : String │
│ - marca : String │
├──────────────────────────────┤
│ + Coche(m:String, b:String) │
│ + getMatricula() : String │
│ + getMarca() : String │
└──────────────────────────────┘
┌────────────────────────────────────┐
│ Parking │
├────────────────────────────────────┤
│ - plazas : Coche[] │
├────────────────────────────────────┤
│ + Parking() │
│ + aparcar(c:Coche) : boolean │
│ + sacar(m:String) : boolean │
│ + listarCoches() : void │
└────────────────────────────────────┘
👉 Aquí el profesor ve que sabes que un array puede guardar objetos, no solo int .
, ⚠️ ALERTA TÉCNICA CLAVE
(NullPointerException)
Cuando usas:
Coche[] plazas = new Coche[10];
Java crea el array…
👉 pero NO crea los coches dentro.
Cada posición vale:
null
Si haces:
plazas[i].getMatricula();
cuando plazas[i] == null
💥 NullPointerException .
✅ La defensa obligatoria en examen
Siempre:
if (plazas[i] != null) {
plazas[i].getMatricula();
}
🧠 Regla mental de corrector:
Array de objetos = comprobar null SIEMPRE.
Java (Gestión de Parking)
Objetivo: Dominar arrays de objetos + null + menú + POO real.
📐 DIAGRAMA UML (ASCII)
Antes de programar, en hoja suele aparecer algo así:
┌──────────────────────────────┐
│ Coche │
├──────────────────────────────┤
│ - matricula : String │
│ - marca : String │
├──────────────────────────────┤
│ + Coche(m:String, b:String) │
│ + getMatricula() : String │
│ + getMarca() : String │
└──────────────────────────────┘
┌────────────────────────────────────┐
│ Parking │
├────────────────────────────────────┤
│ - plazas : Coche[] │
├────────────────────────────────────┤
│ + Parking() │
│ + aparcar(c:Coche) : boolean │
│ + sacar(m:String) : boolean │
│ + listarCoches() : void │
└────────────────────────────────────┘
👉 Aquí el profesor ve que sabes que un array puede guardar objetos, no solo int .
, ⚠️ ALERTA TÉCNICA CLAVE
(NullPointerException)
Cuando usas:
Coche[] plazas = new Coche[10];
Java crea el array…
👉 pero NO crea los coches dentro.
Cada posición vale:
null
Si haces:
plazas[i].getMatricula();
cuando plazas[i] == null
💥 NullPointerException .
✅ La defensa obligatoria en examen
Siempre:
if (plazas[i] != null) {
plazas[i].getMatricula();
}
🧠 Regla mental de corrector:
Array de objetos = comprobar null SIEMPRE.