eliminar Instancia de una Clase
Saludos a todos..
tengo un problema, tengo 2 clases JFrame,
clase A y clase B
En la clase A por medio del evento ActionPerformed de un boton crea una instancia de la clase B con un metodo estatico.
Ya dentro del JFrame de la clase B, presiono un botón y una variable estatica de esa clase recibe un valor X.
En la clase A en el evento focusGained del boton obtengo el valor de esa variable estatica de la Clase B, pero si nunca he presionado el boton de la Clase A, el valor de la variable estatica de la Clase B es vacía, y me marca error, en los calculos que posteriormente tengo que hacer.
Hay alguna manera que al presionar el boton de la clase A, primero verifique si la variable de la clase B existe?? y otra mas como puedo destruir esa variable de la Clase B desde la clase A para que su valor no sea el mismo en el periodo que dure activo el programa.
Ojala me hayan entendido...jeje gracias de antemano.
- Inicie sesión o regístrese para enviar comentarios
Solucionado
Saludos...
he solucionado el problema utilizando un metodo Set en la clase B y llamandolo desde la Clase A, donde le envío como parametro un valor diferente, asi cuando necesito el Valor de la variable de la clase B, pongo una condicion, que si se cumple haga el proceso que necesito.
gc
En Java no necesitas destruir objetos. Suponiendo que tienes dos subclases de JFrame, clase A y clase B, y tienes una instancia de cada una, y la instancia de A tiene un apuntador a la instancia de B, no puedes destruir directamente el objeto. Simplemente rompe la referencia de A a B haciendo
el valor de la variable de A que apunta a B (
suponiendo que la variable se llame
). Si la única referencia a esa instancia de B era la variable de A, entonces el recolector de basura de la máquina virtual de Java destruirá esa instancia de B si ya nadie la está usando, en algun momento.
Para verificar si el valor existe pues simplemente usa un
, una de las estructuras de control más básicas que existen. Olvidémonos por el momento del encapsulamiento, diseño orientado a objetos, mejores prácticas, etc y concentrémonos en esto:
Re: eliminar Instancia de una Clase
No. Primero ¿por qué usas variables estáticas? ¿!
Segundo, como ya te dijo ezamudio, en Java no destruyes instancias. en tu caso lo que harías simplemente es que la variable que apunta a una instancia, haces que apunte a otra instancia.
Saludos
Javier
como dato.
Al no ser usada (refereniada) una instancia durante la ejecución del programa, la garbage collection la borrará por ti; tu no tienes que hacerlo.