Foro de elhacker.net

Programación => Java => Mensaje iniciado por: dragon_abraxas en 30 Enero 2005, 01:17 am



Título: paso de variables entre clases en Java.... me confundo!!
Publicado por: dragon_abraxas en 30 Enero 2005, 01:17 am
Que tal... tengo un grave problema con un programa que estoy haciendo. Sucede que tengo mi clase principal(main), y otras 2 clases. Tengo una variable que instancio en la claes principal y que se la paso a cada a las otras clases, esto por que necesito que si en clase A se modifico la variable, la clase B sepa acerca de esa modificación. El detalle es que, según yo, se las estoy pasando bien, pero hay inconsistencia de datos, es decir lo que le hace la clase A a la variable, ni se enteran las demás clases.
Aqui les paso un bosquejo de como estoy haciendo esto, espero que me digan en que estoy mal, si en todo o que... jeje

public class ClaseA {
private Integer val;

public ClaseA( Integer v )
{
val = v;
edit();
}


private void edit()
{
val = new Integer(val.intValue() + 10);

System.out.println( "Clase A: " + val );

}

}


public class ClaseB {

private Integer val;

public ClaseB( Integer v )
{
val = v;
edit();
}


private void edit()
{
val = new Integer(val.intValue() + 20);

System.out.println( "Clase B: " + val );

}
}


public class Principal {

private ClaseA a;
private ClaseB b;

private Integer val;

public Principal()
{
val = new Integer( 0 );
a = new ClaseA( val );
b = new ClaseB( val );
}

public static void main(String[] args) {

new Principal();
}
}

al correr esto, me muestra los siguentes resultados:
Clase A: 10
Clase B: 20

y lo que yo hubiera esperado es:
Clase A: 10
Clase B: 30

?????