Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Dan_SB en 26 de Marzo 2015, 20:33
-
Muy buenas tardes!!
Vengo con el analisis sobre este cap, método interno y método externo.Para empezar, tengo entendido dos cosas (corrijanme si estoy equivocado de antemano):
Declarar un objeto: Seria Profesor profesor1;
Crear un objeto: Seria profesor1 = new Profesor();
Bien, con las preguntas del ejercicio:
a) ¿Es posible llamar a un método externo de un objeto que ha sido declarado pero no creado?
Osea. Si entiendo bien lo que se pregunta... ¿Podría utilizar un método de la clase del objeto tan solo declarandola (Profesor profesor1;) sin antes haberla creado (profesor1 = new profesor(); )?
Mi respuesta seria que no. Se requiere inicializar todas las variables (atributos de la clase, etc) antes de su uso, sino me podría dar un error. Cuando creamos el objeto, se ejecuta el constructor de la clase y "construye" el objeto. Los atributos se inicializan automáticamente al crear el objeto en pocas palabras...
public Profesor_Secundaria(){
nombre = "";
apellido = "";
edad = 0;
materia1 = "";
materia2 = "";
materia3 = "";
}
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?
Si es posible. Se pueden modificar atributos directamente sin haberlas insertado en un constructor. Según tengo entendido, no es recomendable trabajar con los atributos de la clase así...
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?
El método pow, viene de otra clase externa llamada math. Si creamos un objeto, y le insertamos un método que utiliza métodos de la clase math (siendo math una clase externa). Seria una llamada 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?
Si hablamos sobre un objeto que utiliza pow....(Ejemplo la practica miniCalculadora) entonces, si se debe declarar y crear.
Si estamos hablando entonces, de llamar al pow por separado, no es necesario declarar ni crear una variable de la clase Math.
Ya he metido la pata antes... Creo haber entendido las preguntas, si estoy en lo incorrecto, agradezco sus respectivas correcciones y por favor, tenganme paciencia :P.
-
Hola Dan, la declaración es como dices y la creación como dices (usando new).
Respuesta a) es correcta, si sólo has declarado el objeto simplemente has reservado un espacio de memoria, pero no puedes usar el objeto ya que no ha sido creado. Si lo intentas te aparece un mensaje de error: variable xx might not have been initialized
Respuesta b) es correcta, sí es posible (otra cosa es si será bueno o no).
Respuesta c) es correcta, Math es una clase externa por lo que la llamada a un método de Math es una llamada a un método externo.
Respuesta d) No es correcta :(
Si estamos hablando entonces, de llamar al pow por separado, no es necesario declarar ni crear una variable de la clase Math.
La pregunta es si la llamada a pow se hace sobre un objeto declarado y creado o no. La respuesta es que se hace sobre un objeto declarado y creado, pero no lo hemos declarado y creado nosotros, sino que lo ha hecho el propio compilador Java en segundo plano (es decir, se hace pero "no lo vemos").
Saludos!!
-
Aaa ok!!! Mil gracias por tu ayuda!! Muy importante la respuesta de la ultima pregunta. No sabia eso :O
Gracias!! :D