"Vorrei anche dirti un paio di cose interessanti sulla vita di un oggetto. In Java, è molto difficile distruggere accidentalmente un oggetto. Se hai un riferimento a un oggetto, è vivo.

Non puoi modificare i riferimenti a un oggetto e non puoi aumentarli o diminuirli. Inoltre, non è possibile creare un riferimento a un oggetto. Puoi solo assegnare un riferimento o impostarlo su null."

"Penso di aver capito, Ellie. Quindi, se cancello (o metto a zero) tutti i riferimenti a un oggetto, non sarò mai più in grado di ottenere un riferimento a quell'oggetto o accedervi, giusto?"

"Esatto. Tuttavia, puoi anche avere la situazione in cui il sistema ha troppi oggetti attivi che non vengono utilizzati. I programmatori spesso creano dozzine di oggetti, li memorizzano in vari elenchi per l'elaborazione e quindi non svuotano mai questi elenchi.

Gli oggetti di cui i programmatori non hanno bisogno di solito sono semplicemente contrassegnati come idonei per la raccolta dei rifiuti. Nessuno li cancella dalle liste. Di conseguenza, i programmi Java di grandi dimensioni spesso diventano troppo grandi poiché sempre più oggetti inutilizzati rimangono in memoria.

Non ti imbatterai presto in questo, ma ogni volta ti ricorderò di questi oggetti inutilizzati, nonché del modo giusto per smaltirli."

"OK. Grazie, Ellie, per avermi aiutato a capire meglio i riferimenti."