Ciclo di vita di un oggetto
Il ciclo di vita di un oggetto è costituita da tre step fondamentali:
- creazione
- manipolazione
- distruzione
Lo stadio della creazione
Il primo stadio di vita di un oggetto è la definizione della classe a cui appartiene. Il passo successivo è l’istanzazione di una istanza, attraverso il metodo magic __init__. La memoria viene allocata per contenere l’oggetto, ma poco prima di questo viene chiamato il metodo magic __new__ (raramente viene sovrascritto). Dopo questi passaggi, l’oggetto è pronto per essere manipolato.
Lo stadio della distruzione
Quando un oggetto viene distrutto, la memoria allocata viene liberata e può essere riutilizzata per altri propositi. La distruzione di un oggetto avviene quando il suo reference count ritorna a zero (variabile interna che tiene conto di tutti i riferimenti attivi di un oggetto). Infatti quando non esiste più alcun riferimento ad un oggetto è naturale che l’oggetto debba essere rimosso definitivamente.
La clausola del viene utilizzata per cancellare un oggetto. Si può ridefinire il metodo magic corrispondente __del__.
Il processo di rimozione degli oggetti quando non sono più necessari, viene chiamato garbage collection.
⇐Vai a Lezione 7.2 – Ereditarietà
Vai a Lezione 7.5 – Data Hiding ⇒