Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Pasar variable de una clase a otra

Estas en el tema de Pasar variable de una clase a otra en el foro de Java en Foros del Web. Hola, Tengo un dato que lo quiero guardar en una variable de la clase A, el dato lo saco de aca: getName(); Y lo quiero ...
  #1 (permalink)  
Antiguo 27/02/2013, 16:00
 
Fecha de Ingreso: noviembre-2010
Mensajes: 75
Antigüedad: 13 años, 6 meses
Puntos: 0
Pasar variable de una clase a otra

Hola,

Tengo un dato que lo quiero guardar en una variable de la clase A, el dato lo saco de aca:

getName();

Y lo quiero guardar en una variable Nombre = getName();

Para luego esa variable llamarla en la clase B y guardarla en una tabla.

Por favor a ver si me pueden ayudar.

Erika
  #2 (permalink)  
Antiguo 27/02/2013, 16:34
 
Fecha de Ingreso: noviembre-2010
Mensajes: 75
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Pasar variable de una clase a otra

La variable la logro ver en el mismo metodo, pero una vez que sale del metodo, es como que volviera a nulo.

Es decir en la claseA cree la variable
public String nombre = "";

en el metodo de la claseA, metodo autenticar()
nombre = jogRVO.getName(); /// para tener el nombre del usuario, aca si se ve si le hago un system.out.println();

Ahora en la misma claseA cree un metodo get
public String getNombre(){
return nombre;
}

Ahora en la claseB dentro del metodo abc() quiero llamar a la variable

claseA cd = new claseA();

System.out.println("USUARIO = " + cd.getNombre());


Bueno pues no me pinta, que estoy haciendo mal?

AYUDA PLEASE
  #3 (permalink)  
Antiguo 28/02/2013, 03:21
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Pasar variable de una clase a otra

La clase B debería tener como atributo un objeto (instancia) de la clase A con el nombre informado. En tu metodo abc() utilizarias ese atributo para recuperar el nombre.
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #4 (permalink)  
Antiguo 28/02/2013, 03:37
 
Fecha de Ingreso: agosto-2012
Mensajes: 18
Antigüedad: 11 años, 8 meses
Puntos: 1
Respuesta: Pasar variable de una clase a otra

Primero que todo, recordando el concepto de JavaBean, dice que todo atributo de la clase siempre tiene que ser privado(private String nombre = "";) he allí que se lee y graba por medio de getters y setters. Segundo, como posiblemente el método autenticar() no ha sido llamado, este no llena al atributo "nombre", prueba en la claseB con esto:

Código PHP:
claseA cd = new claseA();
cd.autenticar();
System.out.println("USUARIO = " cd.getNombre()); 
  #5 (permalink)  
Antiguo 28/02/2013, 08:36
 
Fecha de Ingreso: noviembre-2010
Mensajes: 75
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Pasar variable de una clase a otra

Hola,

Gracias por responder, pero ya intente poniendole private String nombre ="";
pero nada, ademas si le pongo cd.autenticar(mapping, form, req, res). Este metodo pasa estas variables y tendria que ponerselas tambien a mi metodo abc(session, cWhere), pero este metodo ya se le pasan dos variables y no quiero agregarle estas cuatro o necesariamente tengo que hacerlo?

Otra cosa Fuzzylog, podrias explicarme con un ejm, ya que soy nueva en esto.
  #6 (permalink)  
Antiguo 28/02/2013, 10:43
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Pasar variable de una clase a otra

Imaginate que la clase ClaseA tiene

//atributo nombre
private String nombre

getter y setter publico para el atributo nombre

La clase ClaseB tendrá

//atributo objeto
private ClaseA objeto

getter y setter publico para el atributo nombre

//metodo de la clase B
public void imprimeNombre() {
if (objeto != null) {
System.out.println(""+objeto.getNombre());
}
}

En el main harías

ClaseA miObjetoA = new ClaseA();
miObjetoA.setNombre("Nombre De Prueba");
*
ClaseB miObjetoB = new ClaseB();
miObjetoB.setObjeto(miObjetoA);
miObjetoB.imprimeNombre();



////

Tb puedes pasar informacion utilizando el getter de un objeto y el setter de otro si el atributo es del mismo tipo

* (sustituir por)
ClaseA miObjetoA2 = new ClaseA();
miObjetoA2.setNombre(miObjetoA.getNombre());
System.out.println(""+miObjetoA2.getNombre());
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #7 (permalink)  
Antiguo 28/02/2013, 15:42
 
Fecha de Ingreso: noviembre-2010
Mensajes: 75
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Pasar variable de una clase a otra

chicos ya lo hice, gracias por su ayuda, lo unico que me faltaba era a la variable delarada ponerle
public static String nombre= "";

el static era la cosa.

Gracias
  #8 (permalink)  
Antiguo 28/02/2013, 16:36
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Pasar variable de una clase a otra

:| El static es sólo para que no tengas que crear una instancia de la clase que contiene esa variable para recuperarla en otro lado, pero no tiene que ver con lo que preguntas en el título de este post.
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}

Etiquetas: clase, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:11.