Java utilizza un sistema di raccolta dei rifiuti per la gestione della memoria . Anche se questo richiede un carico eccezionale off lo sviluppatore - non ha più a garantire gli oggetti vengono rimossi manualmente dalla memoria quando non sono più in uso - si può anche togliere alcune funzionalità che gli sviluppatori di altri ambiti possono essere abituati. Mentre la funzionalità finalizzare non è esattamente la stessa di un distruttore C + + , può essere considerato il più vicino ad un analogo linguaggio Java fornisce . Panoramica veloce di Garbage Collection
Garbage Collection
è uno degli argomenti più avanzati di programmazione Java . A rigor di termini , gli sviluppatori Java possono andare intera carriera senza mai bisogno di sapere molto su il garbage collector e come funziona . In sostanza, ogni oggetto creato in un programma Java è registrato con il runtime di Java, con un conteggio di tutti i luoghi c'è un riferimento esistente a tale oggetto. Quando un oggetto non è più chiamato con qualsiasi altro oggetto , il sistema contrassegna per la raccolta , e la prossima volta che il garbage collector viene eseguito , cancella l'oggetto.
Gestione della memoria di base in C + + < br > con
cose sono diverse in altri linguaggi di programmazione , come C + + , per esempio. In C + + , lo sviluppatore controlla quando un oggetto viene rimosso dalla memoria , a differenza del sistema . Questo è noto come " gestione della memoria deterministico ", e ha i suoi pro e contro . Il lato positivo primario di questo è che lo sviluppatore sa esattamente quando nel codice l'oggetto viene eliminato . Tuttavia, è estremamente facile da eliminare un oggetto che potrebbe essere ancora in uso in altre parti del codice .