Hola LPM
Voy a ponerte un símil en la vida real para explicar los significados de declarar y crear objetos en java.
Imagina un repartidor de pizzas con su scooter, donde puede llevar: pizzas, hamburguesas, bebidas, ensaladas y pastelitos.
(Todo esto son objetos de tipo pizza, hamburguesa, etc. que se crearán con sus clases respectivas. Cada uno de estos objetos, tiene un tamaño que ocupará un espacio en el portapaquetes del repartidor)
El jefe del repartidor le llama al móvil y le dice:
Espavila que tienes que entregar dos ensaladas y tres latas de cola.
(Esto para el repartidor es una declaración de objetos.)
En java la declaración sería así:
private Ensalada ensalada1, ensalada2;
private LataCola cola1,cola2, cola3;
Las declaraciones anteriores no incluyen creación de los objetos. Solo han sido declarados.
Mentalmente el repartidor se hace una idea del encargo: 2 ensaladas de un tamaño específico y sus ingredientes respectivos, más las tres latas de cola.
Cuando el repartidor recibe las ensaladas y las colas, las coloca en su portapaquetes.
Está creando los objetos (hablo en términos de java, las ensaladas no las crea el repartidor, ya lo sabemos)
Dependiendo del tamaño del portapaquetes, decide en que bandejas deja las ensaladas y las colas (al crear los objetos les asigna una dirección de memoria en la computadora)
En java la creación de objetos sería así:
ensalada1 = new Ensalada();
ensalada2 = new Ensalada("sin cebolla");
cola1 = new LataCola();
cola2 = new LataCola("light");
cola3 = new LataCola("familiar","oferta");
La creación de los objetos anteriores, implica que necesariamente en otro lugar del código se han declarado estos objetos.
A continuación una declaración y creación de objetos en la misma sentencia:
private Pizza pizza1 = new Pizza("mediana");
Espero que lo anterior te haya ayudado a comprender los conceptos de declarar y crear objetos.
Si es así, retoma el ejercicio y mira si tienes que modificar tus respuestas.
Saludos