21. december 2013 - 04:08Der er
4 kommentarer og 1 løsning
Sætte instance variable til null/garbage collector
Er kommet i tvivl om følgende........
Hvis jeg har et objekt: Objekt obj1 = new Objekt(); og jeg også har en anden reference til dette objekt i en liste fx.
minListe.add(obj1);
Hvis jeg så siger:
obj1 = null;
Sletter jeg så objektet (via gc) da der ikke bliver refereret til den længere? eller sætter jeg bare variablen til at pege på null, og objektet lever stadig da listen peger på den?
Tak Arne. Har vi en måde at slette et objekt på uden at skulle både sætte variablen til null, samt fjerne den fra listen? Eller hvis nu der var mange referencer til den i et større program. Smid svar!
I det hele taget er det slet ikke meningen at du skal taenke paa GC.
Du har ref til de data du skal bruge. Naar du mister de ref fordi at diverse variable ryger ud af scope, saa bliver de GC'et paa et eller andet tidspunkt.
Med:
Objekt obj1 = new Objekt(); minListe.add(obj1);
saa er objektet klart til GC naar baade obj1 og minListe er ude af scope.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.