La gestione della memoria in Java é automatica. Ogni volta che viene creato un oggetto Java alloca una congrua quantità di memoria inizializzando il suo ciclo di vita. Quando questo diventa inutile questo viene eliminato attraverso un metodo nativo della JVM denominato garbage collector, prima di eliminarlo però ne esegue il metodo finalize se questo é presente.
I costruttori
I costruttori sono metodi che compiono tutte quelle operazioni necessarie all’inizializzazione dell’oggetto e dei suoi attributi.
La keyword di auto-riferimento this
Se durante l’invocazione del metodo di un oggetto si renda necessario accedere a qualcuno dei suoi stessi attributi, la parola chiave di auto-riferimento this può validamente e semplicemente sostituire il nome dell’oggetto attivo stesso. Questa pratica é definita auto-referenza esplicita.
Esiste in ogni caso anche la possibilità di un auto-referenza implicita strettamente connesso alla visibilità di una variabile, che funziona in questo modo:
- Se la variabile non appartiene al medesimo blocco di codice viene cercata risalendo a ritroso nella lista dei parametri del metodo corrente.
- In caso negativo, viene cercata nella lista degli attributi dell’oggetto
- Se quest’ultimo tentativo fallisce, il compilatore restituisce un errore.