Autor Tema: Java diferencia entre declarar y crear objetos. Ejercicio resuelto (CU00653B)  (Leído 6269 veces)

macarena2405

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 36
    • Ver Perfil
Reflexiona y responde a las siguientes preguntas:

Citar
a) ¿Es posible llamar a un método externo de un objeto que ha sido declarado pero no creado?

b) ¿Es posible llamar a un método externo de un objeto “A” que ha sido declarado y creado pero cuyo constructor está vacío?

c) Una llamada al método pow de la clase Math que hacemos dentro de un método definido en una clase ¿Es una llamada a un método interno o a un método externo? ¿La llamada al método pow se hace sobre un objeto declarado y creado o no declarado y no creado?

a) Para empezar quiero saber si voy bien, un objeto declarado es el objeto que le hemos definido los atributos y métodos sin darle la sentencia para crear el objeto que es new.Una vez que le hemos dado nuevoObjeto = new (nombreDelObjetoDeclarado) podemos decir que el objeto está creado.  es así? y creo que es necesario crear el objeto, es decir debe existir para tener acceso a sus métodos,  en el código del grupoDeposito para llamar al método valorCapacidad () primeramente creo los objetos de Deposito en el switch.

b)Creo que no, lo que hice fue borrar el constructor de Depositos, dejando solo el constructor con this y no me dejaba compilarlo, de todas maneras no estoy segura de esta respuesta.

c)Tampoco estoy segura de esto pero creo que si el método corresponde a una clase del Api de java no es necesario crear la clase para utilizarla, pero todo esto lo respondo simplemente mirando ejercicios y sacando mis propias conclusiones, espero sus correcciones :)

« Última modificación: 24 de Mayo 2015, 17:56 por Alex Rodríguez »

macarena2405

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 36
    • Ver Perfil
ah y la llamada sería a un metodo externo creo,

Lorenzo31

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 381
    • Ver Perfil
Buenas tardes macarena, en la respuesta A estás en lo correcto, declararla es

SalonCasa salon;

(los atributos y metodos no tienen nada que ver, eso es interno de la clase) declarar lo que hace es reservar un espacio de memoria para el objeto SalonCasa llamado salon; (que efectivamente cumplira las normas que le hayas escrito dentro de la clase SalonCasa) pero declararlo es lo anterior.

Y inicializarla es cuando usas el new y llamas al constructor

salon = new SalonCasa();

Te lo pongo todo en una linea

SalonCasa salon = new SalonCasa()   clase --> SalonCasa nombre q le ponemos ---> salon  Constructor---> SalonCasa()

La respuesta C es correcta, Math viene cargada por defecto y por esa razón se puede llamar a sus métodos, representaria que ya esta inicializada automaticamente, por simplificar.

La respuesta B no es correcta, un constructor vacio, no deja de ser un constructor, y se creará el objeto, simplemente que no se le pasan parametros, y inicializará con valores que desconocemos. Pero no deja de ser un constructor igualmente.

Espero haberte aclarado un poco el tema ;)
« Última modificación: 22 de Mayo 2015, 19:03 por Lorenzo31 »

macarena2405

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 36
    • Ver Perfil
Genial, entendí la diferencia entre crear y declarar; también lo del constructor vacío, ahora si todo más claro muchas gracias :)

 

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".