April 2018
Intermediate to advanced
910 pages
33h 21m
English
The idea of Java having a garbage collector running in the dark shadows of your code (usually a low-priority thread) and deallocating memory currently allocated to unreferenced objects, is appealing. So, how does this work? The garbage collection system monitors objects and, as feasible, counts the number of references to each object.
When there are no references to an object, there is no way to get to it with the currently running code, so it makes perfect sense to deallocate the associated memory.