Java - Alguien me podria ayudar?

 
Vista:
sin imagen de perfil

Alguien me podria ayudar?

Publicado por hymuura (10 intervenciones) el 29/10/2013 13:27:26
hola gente tengo un pequeño problema con mi metodo de acumulacion pienso que se me esta muriendo el valor de la variable cuando lo pido o mejor mirenlo por ustedes mismos y diganme en que me estoy equivocando por favor :) (estoy practicando lo que es herencia)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
public class madre {
	public int acumulador;
 
	public madre(){
 
	}
 
 
	public void funcionAcumuladora(int numero){
		this.acumulador+=numero;
	}
	public int devuelveAcumualador(){
		return this.acumulador;
	}
}
 
-------------------------------------------------------------------------------------------------
 
public class hija extends madre{
 
	public void pasaleUnValor(){
		super.funcionAcumuladora(5);
	}
 
}
 
 
------------------------------------------------------------------------------------------------
 
public class app {
 
	public static void main(String[] args) {
		hija h=new hija();
		madre m=new madre();
 
		h.pasaleUnValor();
		System.out.println(h.devuelveAcumualador());
		System.out.println(m.devuelveAcumualador());
 
	}
 
}
 
------------------------------------------------------------------------------------------------

trate de simplificar el ejemplo pero tenia otras clases hijas que le mandaban valores a el metodo acumulador de la clase madre espero bueno en fin por pantalla me imprime

5
0 // aca me deberia aparecer 5

no entiendo porque me imprime 0 ese es mi problema y porque si me imprime 5



alguien me podria dar una mano? desde ya muchas gracias :)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Alguien me podria ayudar?

Publicado por UnoPorAhi (128 intervenciones) el 29/10/2013 15:47:08
Buenas,

Lo que te devuelve es correcto, ya que sólo estás actualizando el valor para el objeto que instancia la clase hija:
h.pasaleUnValor();

En el objeto que instancia directamente la clase madre nunca actualizas el valor por lo que toma el valor por defecto de los tipos int: 0.


Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Alguien me podria ayudar?

Publicado por Vicente (56 intervenciones) el 29/10/2013 15:49:59
Como bien te dice, al heredar heredas todo de la madre... entonces sólo estas cambiando el valor a lo que has heredado de ella dentro de la clase hija, nunca llegas a tocar el atributo de la madre.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Alguien me podria ayudar?

Publicado por hymuura (10 intervenciones) el 29/10/2013 15:51:48
Ahhhhhhhhhhhhhhhhhhhhhhhhhhhhhh muchas gracias :P
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Alguien me podria ayudar?

Publicado por hymuura (10 intervenciones) el 29/10/2013 15:52:11
Muchisimas gracias :P
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar