Junior — Middle
Java'da bellek yönetimi bağlamında zayıf referans nedir açıklayabilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Java'da SoftReference (Yumuşak Referans), sistemde yeterli bellek olmadığında nesnenin çöp toplayıcı tarafından toplanmasına izin veren bir referans türüdür, ancak bellek yeterli olduğu sürece nesne korunur.
Bu, önbellekleme için faydalıdır: yumuşak referanslara sahip nesneler hemen silinmez, sadece bellek boşaltılması gerektiğinde silinir.
Yumuşak referans kullanımı örneği:
import java.lang.ref.SoftReference;
public class SoftReferenceExample {
public static void main(String[] args) {
Object strongRef = new Object();
SoftReference<Object> softRef = new SoftReference<>(strongRef);
strongRef = null; // artık nesne sadece yumuşak referans aracılığıyla erişilebilir
Object obj = softRef.get();
if (obj != null) {
System.out.println("Nesne erişilebilir");
} else {
System.out.println("Nesne çöp toplayıcı tarafından toplanmış");
}
}
}