Programmazione orientata agli oggetti: Che cos’è l’istanziazione di un oggetto
Nella programmazione orientata agli oggetti, la dichiarazione di una variabile stabilisce a quale oggetto può referenziare. La creazione dell’oggetto non coincide con la dichiarazione, ma avviene in modo esplicito a seguito della dichiarazione, fornendo le specifiche di tipo e tutti gli argomenti necessari per la sua costruzione. In questo modo il sistema viene messo in grado di allocare lo spazio che serve per memorizzare gli attributi dell’oggetto, essendo in possesso di tutte le informazioni necessarie allo scopo.
L’operazione di creazione degli ggetti iene ndicata con il termine di istanziazione di un oggetto: gli oggetti vengono memorizzati all’interno dell’area di memoria di sistema, nota con il nome di heap, e in risposta all’operazione di creazione viene restituito il riferimento all’oggetto (OID), indicatore utilizzato per riferirsi all’oggetto creato.
Gli attributi presenti all’interno di un ggetto sono variabili dell’istanza, poiché per ogni oggetto definito è presente una copia distinta degli attributi.
Gli oggetti non vengono mai cancellati esplicitamente: nel omento in cui non servono più è sufficiente non referenziarli, vengono così acquisiti dal arbage collector, che agendo indipendentemente rispetto all’esecuzione e tenendo traccia di tutti i riferimenti gli oggetti, li rimuove dallo spazio allocato nello eap. La cancellazione dell’oggetto avviene quando il garbage collector decide di intervenire, ad sempio quando il sistema non riesce a trovare sufficiente spazio libero per allocare un’ulteriore oggetto e sorge quindi la necessità di recuperarne.