En Java, la destruction des objets est prise en charge par le éboueur Le module et les objets qui n'ont aucune référence à eux sont éligibles pour le garbage collection. Garbage Collector est capable d’identifier ce type d’objet. Voyons maintenant ce que signifie exactement l'île d'isolement comme suit :
- L'objet 1 fait référence à l'objet 2 et l'objet 2 fait référence à l'objet 1. Ni l'objet 1 ni l'objet 2 ne sont référencés par un autre objet. C'est une île d'isolement.
- Fondamentalement, un îlot d'isolement est un groupe d'objets qui se référencent les uns les autres mais ne sont référencés par aucun objet actif dans l'application. À proprement parler, même un seul objet non référencé est également un îlot d'isolement.
Exemple:
Java
// Java Program to Illustrate Island of Isolation // Main class public class GFG { GFG i; // Method 1 // Main driver method public static void main(String[] args) { // Creating object of class inside main() method GFG t1 = new GFG(); GFG t2 = new GFG(); // Object of t1 gets a copy of t2 t1.i = t2; // Object of t2 gets a copy of t1 t2.i = t1; // Till now no object eligible // for garbage collection t1 = null; // Now two objects are eligible for // garbage collection t2 = null; // Calling garbage collector System.gc(); } // Method 2 // overriding finalize() Method @Override protected void finalize() throws Throwable { // Print statement System.out.println('Finalize method called'); } }
Sortir:
amrita rao acteur
Explication de la sortie :
- Avant de détruire un objet, Garbage Collector appelle la méthode finalize au plus une fois sur cet objet. C'est parce que la méthode finalize() est appelée deux fois dans l'exemple ci-dessus, car deux objets sont éligibles pour le garbage collection. En effet, nous n'avons aucune référence externe aux objets t1 et t2 après l'exécution de t2=null.
- Tout ce que nous avons, ce sont uniquement des références internes (qui sont dans l'instance variable i de la classe Test) les unes des autres. Il n'y a aucun moyen d'appeler une variable d'instance des deux objets. Ainsi, aucun des objets ne peut être rappelé avant ' t2.i = t1 '

- Les deux objets ont des références externes t1 et t2.
Désormais, les deux objets sont éligibles pour le garbage collection. nous ne pouvons pas les appeler . C'est ce qu'on appelle communément Île d'isolement.
f films