મિત્રો, આ Tutorial માં આપણે શીખીશું Garbage Collection in Java, gc Method and finalize() Method.
આપણે અગાઉ ના Tutorial માં જોયું કે Java Comments ને કઈ રીતે Use કરવી અને હવે આપડે શીખીશું Java નો Most Imp Question Garbage Collection. તો ચાલો મિત્રો આજે આ Tutorial માં Garbage Collection in Java ને ખૂબજ સરળ રીતે સમજીએ.
What is Garbage Collection in Java?
- Java માં, garbage એટલે કચરો. આ કચરો એ આપણાં ઘર નો કચરો નહીં પરંતુ programming નો કચરો.
- આમાં program માં ન વપરાયેલ object free થાય છે.
- Garbage collection એ runtime એ use ના થયેલી memory ને automatic પાછી મેળવવાની process છે.
- બીજા શબ્દો માં કહીએ તો, આ unused objects ને destroy કરવાની રીત છે.
- જાવા માં garbage collection automatically perform થાય છે.
- Garbage collector automatically સમયાંતરે [periodically] ચાલે છે.
How Can an Object be Unreferenced?
1. By nulling a reference
Maricollege m = new Maricollege();
m = null;
2. By assigning a reference to another
Maricollege m1 = new Maricollege();
Maricollege m2 = new Maricollege();
m1 = m2;
3. By anonymous object
new Maricollege();
gc() Method
- તમારે જ્યારે પણ જરૂર હોય ત્યારે તમે gc() method ને call કરી garbage collector ને run કરી શકો છો.
- java.lang.System.gc() method garbage collector ને run કરે છે.
- આ method ન વપરાયેલ objects ને free memory માટે recycle કરે છે.
- gc() method એ system અને runtime classes માં જોવા મળે છે.
finalize() Method
- જો કોઈ object એ non-java resource ને hold કર્યા છે જેવા કે, file handle અથવા window character font, તો તે object ને destroy કરતાં પહેલા આ resources ને free કરવા પડે.
- તેના માટે આપણે finalize() method નો use કરીએ છીએ.
- Object garbage માં collect કરવામાં આવે તે પહેલાં દર વખતે finalize() method નો ઉપયોગ કરવામાં આવે છે.
- આ method object class માં આ રીતે define કરવામાં આવે છે:
protected void finalize()
{
……………………………
}
- Finalize method ની અંદર તમે તે actions ને લખી શકો કે જે object destroy થાય તેની પહેલા થવી જોઈએ.
Advantage
- તે java ને memory efficient બનાવે છે. કારણકે garbage collector unreferenced object ને heap memory માંથી remove કરે છે.
- તે automatically garbage collector દ્વારા થાય છે તો આપણે કોઈ extra efforts કરવાની જરૂર પડતી નથી.
Example
public class maricollege
{
public static void main(String args[])
{
maricollege m = new maricollege();
m=null;
System.gc();
}
protected void finalize()
{
System.out.println("Object Destroyed");
}
}
આ પણ વાંચો – Java Comments
આ પણ વાંચો – Wrapper Class in Java
આ પણ વાંચો – Scope of Variables – Default Values of Variables
આ પોસ્ટ જેમાં મિત્રો આપણે જોયું કે Garbage Collection in Java, gc Method and finalize() Method.
જો મિત્રો તમને આ પોસ્ટ મદદરૂપ લાગી હોય, તો તમે તમારા મિત્રો સાથે ચોક્કસ શેર કરો અને જો તમને જાવા અથવા બીજા કોઈ વિષય સંબંધિત કોઈ પ્રશ્ન હોય તો તમે નીચે કોમેન્ટ કરીને અમને જણાવી શકો છો. આભાર.