Junior — Middle
¿Puede explicar para qué sirve y cómo se aplica la clase WeakReference en Java?
sobes.tech AI
Respuesta de la IA
La clase WeakReference en Java se utiliza para crear referencias débiles a objetos. A diferencia de las referencias fuertes, las referencias débiles no impiden la recolección de basura: si un objeto solo es accesible a través de referencias débiles, puede ser eliminado por el recolector de basura.
Esto es útil, por ejemplo, para el almacenamiento en caché, cuando se necesita mantener objetos pero sin impedir su eliminación en caso de falta de memoria. En Android, a menudo se usa WeakReference para mantener referencias a Context o Activity, para evitar fugas de memoria.
Ejemplo de uso:
WeakReference<MyObject> weakRef = new WeakReference<>(new MyObject());
MyObject obj = weakRef.get();
if (obj != null) {
// el objeto aún está disponible
} else {
// el objeto ha sido recolectado por el recolector de basura
}