Manejo de clases y variables

Alejandro
29 de Marzo del 2005
Saludos compañeros, estoy tratando de implementar un menu, y el codigo lo pongo mas abajo. El problema es que declaro una variable en la clase principal, y quiero usar esa variable en otra clase distinta, pero no me deja, como podria hacerlo ???

class Generar
{
// Declaracion de variables
Generar ()

}

public class Menu
{
JList lis;
...

Menu ()
{
...
}

static public void main (...)
{
...
miframe.getContentPane().add(new Menu());
}
}

y dentro del constructor de Generar uso la variable lis, y ahi es donde me da el error.

Y otra cosa: quiero que en la ficha ppal, en el panel del medio, le de a un boton y me salga todo lo que contiene la clase Generar(), que le tendria que poner al ActionListener del boton, solo el codigo "new Generar ()" ?¿

Espero que me haya explicado bien, y espero vuestras respuestas. Gracias por adelantado.

dibu
29 de Marzo del 2005
Con lo primero:
Para poder utilizar una variable de una clase en otra, la debes declarar de tipo public, así:
public JList lis;
de o contrario se declara como privada y no puedes acceder a ella desde otra clase.

Con lo segundo:
el código new Generar() crea una instancia de la clase Generar, es decir llama al constructor, lo que tengas dentro del constructor se ejecutará. Si dentro del constructor imprimes todos los datos de tu clase, eso se mostrará, pero si no deberás implementarlo.

Otra forma es creando una función dentro de la clase Generar, la cual te imprima lo que contiene esa clase, algo así:

public void imprimir(){
System.out.println(datomiembro1);
System.out.println(datomiembro2);
....
etc.....
}.

Espero te ayude,

Salu2.

Alejandro
29 de Marzo del 2005
Si la declaro como public dentro de la clase Menu me sigue dando error en esas variablesss, buffff, ya he probado un monton de cosas y nada. Me podria ayudar alguien ???