Originariamente inviato da ale60
però il problema della deframentazione non ci dovrebbe essere anche nello stack???perchè in tutti i casi io inserisco blocchi di dati e alla fine della funzione vengono dealoccati ecc...non dovrebbe sorgere lo stesso problema che magari io continuo a mettere dati poi le funzioni muoiono e si libera dello spazio
li ci sono riferimenti a dati, non dati, e comunque è proprio lo stack che in un certo senso "detta legge" su cosa ha vita nell'heap; se nell'heap c'è qualcosa che non è referenziato dallo stack, allora java capisce che quel dato o quell'oggetto nell'heap non serve più e lo avvia verso il garbage collector.

ricorda che il nome di un oggetto in java rappresenta l'indirizzo di memoria che ospita quell'oggetto, il dato non è direttamente contenuto nella variabile, ma la variabile ( nello stack ) ospita un riferimento all'oggetto ( che vive nell'heap ); accade qualcosa di simile in C con i vettori e l'aritmetica dei puntatori.