Référence

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