Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/10/2014, 14:30
Avatar de chuidiang
chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: eliminación de objetos

Hola:

Como comenta Profesor_Falken, no puedes eliminarlo de la memoria de forma explícita. Tal cual lo estás haciendo, el recolector de basura los irá recogiendo, puesto que la variable objeto que lo contiene se le asigna otro valor distinto en cada iteración.

De todas formas, para no andar jugando con la memoria de esa forma (crear objeto, usarlo, dejarlo al recolector de basura y vuelta a empezar), debes pensar si tiene sentido crear ese objeto y tirarlo tantas veces. Eso dependerá mucho de lo que haga ese método funciona().

Mira a ver si es posible una de estas opciones:
- Crear los dos objetos Clase_B y Clase_C una sola vez fuera del bucle, ahorrando hacer un new en cada iteración. ¿Se puede reutilizar el objeto llamando a funciona() varias veces. Cuando termine el bucle, apunta a null las variables donde guardas Clase_B y Clase_C.
- Segunda opción, mira a ver si ese funciona() puede ser static. Si es así, no necesitas hacer el new. Bastaría con Clase_B.funcina(...) o Clase_C.funciona(....)

Se bueno.
__________________
Apuntes Java
Wiki de Programación