Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Apa itu Pengumpulan Sampah di Jawa?

Apa itu Pengumpulan Sampah di Jawa?

Pengumpulan Sampah di Jawa adalah proses dimana program melakukan manajemen memori secara otomatis. Pengumpul Sampah (GC) menemukan objek yang tidak digunakan dan menghapusnya untuk mendapatkan kembali memori. Di Java, alokasi memori dinamis objek dicapai dengan menggunakan operator baru yang menggunakan beberapa memori dan memori tetap dialokasikan sampai ada referensi untuk penggunaan objek.

Ketika tidak ada referensi ke suatu objek, itu dianggap tidak lagi diperlukan, dan memori, yang ditempati oleh objek dapat diambil kembali. Tidak ada kebutuhan eksplisit untuk menghancurkan sebuah objek karena Java menangani de-alokasi secara otomatis.

Teknik yang melakukan ini dikenal sebagai Pengumpulan Sampah . Program yang tidak mengalokasi memori pada akhirnya bisa macet ketika tidak ada memori yang tersisa di sistem untuk dialokasikan. Program ini dikatakan memiliki kebocoran memori.

Pengumpulan sampah di Jawa terjadi secara otomatis selama masa hidup program, menghilangkan kebutuhan untuk mengalokasikan memori dan dengan demikian menghindari kebocoran memori.

Dalam bahasa C, programmer bertanggung jawab untuk mende-alokasikan memori yang dialokasikan secara dinamis menggunakan fungsi free(). Di sinilah manajemen memori Java mengarah.

Catatan:Semua objek dibuat di Heap Bagian memori. Lebih lanjut tentang ini di tutorial selanjutnya.

Contoh:Mempelajari Mekanisme Pemungut Sampah di Jawa

Langkah 1) Salin kode berikut ke dalam editor.

class Student{
int a;
int b;

  public void setData(int c,int d){
    a=c;
    b=d;
  }
  public void showData(){
    System.out.println("Value of a = "+a);
    System.out.println("Value of b = "+b);
  }
  public static void main(String args[]){
    Student s1 = new Student();
    Student s2 = new Student();
    s1.setData(1,2);
    s2.setData(3,4);
    s1.showData();
    s2.showData();
    //Student s3;
    //s3=s2;
    //s3.showData();
    //s2=null;
    //s3.showData();
    //s3=null;
    //s3.showData();
  }
}

Langkah 2) Simpan, Kompilasi dan Jalankan kode. Seperti yang ditunjukkan pada diagram, dua objek dan dua variabel referensi dibuat.

Langkah 3) Batalkan komentar pada baris # 20,21,22. Simpan, kompilasi &jalankan kode.

Langkah 4) Seperti yang ditunjukkan pada diagram di bawah, dua variabel referensi menunjuk ke objek yang sama.

Langkah 5) Uncomment baris #23 &24. Kompilasi, Simpan &Jalankan kodenya

Langkah 6) Seperti yang ditunjukkan pada diagram di bawah, s2 menjadi nol, tetapi s3 masih menunjuk ke objek dan tidak memenuhi syarat untuk pengumpulan sampah java.

Langkah 7) Uncomment baris #25 &26. Simpan, Kompilasi &Jalankan Kode

Langkah 8) Pada titik ini tidak ada referensi yang menunjuk ke objek dan memenuhi syarat untuk pengumpulan sampah. Itu akan dihapus dari memori, dan tidak ada cara untuk mengambilnya kembali.

Bagaimana cara menghapus objek di Java?

1) Jika Anda ingin membuat objek Anda memenuhi syarat untuk Pengumpulan Sampah, tetapkan variabel referensinya ke null.

2) Tipe primitif bukanlah objek. Mereka tidak dapat ditetapkan null.


java

  1. Operator Jawa
  2. Antarmuka Jawa
  3. Java mencoba-dengan-sumber daya
  4. Anotasi Jawa
  5. Variabel Statis di Java:Apa itu Static Block &Method [Contoh]
  6. Antarmuka vs Kelas Abstrak di Jawa:Apa Perbedaannya?
  7. Overloading Konstruktor di Java:Apa itu &Contoh Program
  8. Java - Kerangka Koleksi
  9. Java 10 - Pengumpulan Sampah yang Ditingkatkan
  10. Java 10 - Alokasi Heap