Autor Tema: Ejercicio (CU00663B), Asignación de igualdad en Java. Referencias a objetos.  (Leído 3467 veces)

Dan_SB

  • Avanzado
  • ****
  • Mensajes: 273
  • *<DanielsCK>*
    • Ver Perfil
Buenas noches!!!

Vengo a resolver las preguntas del siguiente enunciado:

Considera una clase Java que se denomina TripulacionAvion y que tiene como atributos a tres objetos de tipo Persona: Persona piloto; Persona copiloto1; Persona copiloto2.

a) ¿Sería posible que al crear un objeto TripulacionAvion se produjera que piloto, copiloto1 y copiloto2 apuntaran a un mismo objeto, es decir, que existiera una relación de identidad entre los tres atributos?

Opino que si seria posible!!!!

Persona piloto = new Persona();
copiloto1 = piloto;
copiloto2 = piloto;


Los 3 tendrán la misma dirección donde apuntar!

b) ¿Existiría relación de identidad cuando creemos un objeto TripulacionAvion entre los tres atributos si no se inicializaran en el constructor?

No. ya estas haciendo un fallo si no inicializas en el constructor de partida. No tendría una "identidad" el objeto, por decirlo así.

c) ¿Cuál sería el contenido de los atributos si no se inicializan en el constructor y creamos un objeto de tipo TripulacionAvion?

Al objeto que aun no se a inicializado sus atributos en el constructor... como se trata de objetos y no de datos primitivos, les coloca un "Null" automáticamente!!

Corrijanme si estoy en lo incorrecto!!
Gracias!!!
"Luchar por tus sueños y cumplirlos... eso es vivir.."

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2660
    • Ver Perfil
Hola Dan la respuesta a) perfecta, la respuesta b) sería discutible. No inicializar es algo no recomendado, pero está permitido y no es ilegal, por lo tanto no podemos considerarlo un fallo en sentido estricto. Si no se inicializan los tres objetos apuntarían a null, esto es un caso especial y podríamos decir que sí existe relación de identidad entre ellos porque los tres apuntan a lo mismo, a null.

Aquí se comenta esto: www.aprenderaprogramar.com/foros/index.php?topic=1964

La pregunta c) está bien respondida, al tratarse de objetos no inicializados su contenido sería null



Salu2

Dan_SB

  • Avanzado
  • ****
  • Mensajes: 273
  • *<DanielsCK>*
    • Ver Perfil
Jajaja la verdad la segunda pregunta me dejo pensando un rato (un bueeen rato xD) Gracias por tus comentarios!! :)
"Luchar por tus sueños y cumplirlos... eso es vivir.."

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".