Jelenlegi hely

7.4. Nem használt objektumok eltávolítása

A Java platform lehetővé teszi annyi objektum létrehozását, amennyit csak akarunk (korlát csak az, hogy mennyit tud kezelni a rendszerünk), és nem kell aggódnunk a megszüntetésük miatt. A futtatókörnyezet törli az objektumokat, ha többet már nem használjuk. Ez a szemétgyűjtés.

Egy objektum akkor törölhető, ha már nincs rá több hivatkozás. Meg lehet szüntetni egy objektumot úgy is, hogy a hivatkozását null értékre állítjuk. Egy objektumra több hivatkozás is lehet, ezeket mind meg kell szüntetni, hogy az objektum a szemétgyűjtőbe kerülhessen.

A szemétgyűjtő

A szemétgyűjtő periódikusan felszabadítja a már nem használt objektumok által foglalt memóriát. Automatikusan végzi a dolgát, bár néha szükség lehet rá, hogy közvetlen meghívjuk. Ezt a System osztály gc metódusával tehetjük meg. Olyankor lehet rá szükség, ha egy kódrész sok szemetet hoz létre, vagy egy következő kódrésznek sok memóriára van szüksége. Általában elegendő hagyni, hogy magától fusson le.

Megjegyzés: Egyes fejlesztők a Java egyik gyenge pontjának tartják a memóriakezelését. Aki úgy gondolja, hogy tud jobb megoldást az Oracle programozói által létrehozottnál, akár a sajátját is használhatja.