- Trending Categories
- Data Structure
- Operating System
- C Programming
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Garbage collection in Java
Java Garbage collector tracks the live object and objects which are no more need are marked for garbage collection. It relieves developers to think of memory allocation/deallocation issues.
JVM uses the heap, for dynamic allocation. In most of the cases, the operating systems allocate the heap in advance which is then to be managed by the JVM while the program is running. It helps in following ways −
Faster object creation as Operating system level synchronization is no more needed for each object. Object Allocation takes some memory and increases the offset.
When an object is not required, garbage collector reuses the object's memory for further allocation.
As objects forms tree, they have one or more root objects. If root objects are reachable, the whole tree is reachable. There are some special objects as well which are garbage collection roots (GC roots) and are always reachable.
- Related Articles
- Java Garbage collection
- Using the finalize() method in Java Garbage Collection
- Garbage Collection in Python
- How can we call garbage collection (GC) explicitly in Java?
- Destroying Objects (Garbage Collection) in Python
- What is garbage collection in C#?
- Destructors and Garbage Collection in Perl
- How to make an object eligible for garbage collection in Java?
- How to force garbage collection in C#?
- How does garbage collection work in Python?
- How to prevent object of a class from garbage collection in Java?
- How does Garbage Collection work in Lua Programming?