Reference.

Besoin

Réperer des objets.

Analyse

Les références peuvent être :

Conception

Une référence non fermes n'est pas pointée directement mais au travers d'un objet Reference qui l'encapsule et permet d'y accéder. Cependant cet objet est constant et ne permet pas de modifier l'objet pointé.

Implémentation

En Java les références ...

java.lang.ref Reference ReferenceQueue

Version 1
Commentaire
Release 0 1 2 3 4 5
Elément Fixpack 2
Ferme Oui Thread-safe (synchronisé).
Douce Non SoftReference
Faible Non WeakReference
Fantôme Non PhantomReference Planification des opérations d'avant disparition de manière plus souple qu'avec finalize().

Exemples

Des exemples d'utilisation de références sont :

{
Object stronglyReachable = new Object(); // Ne pourra disparaître qu'à la fin du bloc
SoftReference objetCache = new SoftReference(data); // data disparaîtra si besoin de mémoire
WeakHashMap canonicalDictionary = new WeakHashMap(); // Les clés (et donc valeur) peuvent disparaître
}

Limitations