Perbedaan antara pengumpul sampah dan destruktor

Perbedaan antara pengumpul sampah dan destruktor

Perbedaan Utama - Pengumpul Sampah vs Destruktor
 

Sebagian besar bahasa pemrograman mendukung pemrograman berorientasi objek. Ini adalah metodologi untuk membangun program atau perangkat lunak menggunakan objek. Objek dibuat menggunakan kelas, jadi ini adalah instance dari kelas. Kelas memberikan deskripsi tentang apa yang harus terdiri dari objek. Saat membuat objek, memori dialokasikan untuk objek. Memori yang dialokasikan harus dirilis di akhir eksekusi program untuk menggunakan kembali memori itu untuk beberapa objek lainnya. Bahasa pemrograman seperti Java dan C#.Penggunaan bersih Kolektor sampah untuk manajemen memori sementara bahasa seperti C dan C ++ memerlukan programmer untuk menangani manajemen memori. Jumlah memori yang diperlukan harus dialokasikan, dan pada akhir eksekusi, memori harus dilepaskan. Kolektor dan destruktor sampah digunakan untuk melepaskan memori. Itu perbedaan utama Antara pengumpul sampah dan destruktor adalah itu Seorang pengumpul sampah adalah perangkat lunak yang melakukan manajemen memori otomatis sementara destruktor adalah metode khusus yang disebut oleh pengumpul sampah selama penghancuran objek.

ISI

1. Ikhtisar dan Perbedaan Utama
2. Apa itu pengumpul sampah
3. Apa itu destruktor
4. Kesamaan antara pengumpul sampah dan destruktor
5. Perbandingan Berdampingan - Pengumpul Sampah vs Destruktor Dalam Bentuk Tabel
6. Ringkasan

Apa itu pengumpul sampah?

Beberapa bahasa pemrograman telah mengelola lingkungan kode. Dalam bahasa pemrograman Java dan C#, manajemen memori otomatis dilakukan. Programmer tidak perlu membebaskan memori yang digunakan oleh objek. Lebih mudah bagi mereka untuk mengembangkan sistem yang bahkan kompleks karena manajemen memori dilakukan secara otomatis. Dalam bahasa pemrograman seperti C, C ++, dan Tujuan C, program harus melepaskan memori objek kembali ke sistem. Bahasa seperti java dan c# dapat mengetahui objek yang tidak lagi digunakan. Setelah itu, mereka melepaskan memori yang dialokasikan untuk objek -objek tersebut kembali ke sistem.

Dalam bahasa pemrograman C# dan Java, jika ada kelas yang disebut siswa, maka suatu objek dapat dibuat menggunakan siswa S = siswa baru (); 'Baru' digunakan untuk membuat instance kelas siswa. Itu mengalokasikan memori dalam sistem. 'S' mengacu pada blok memori yang dialokasikan untuk objek itu. Lingkungan bahasa mengidentifikasi apakah objek sedang digunakan atau tidak. Jika tidak digunakan lebih lanjut, maka memori dilepaskan dan dapat digunakan nanti.

Gambar 01: Pengumpul sampah dan destruktor

Saat menjalankan program, blok memori dialokasikan dari kumpulan memori sistem. Kemudian program melakukan tugas menggunakan memori itu. Ketika eksekusi program selesai, pengumpul sampah mencari tahu apakah blok memori yang dialokasikan untuk program ini penting atau tidak. Jika tidak diperlukan, blok memori tersebut dikembalikan ke sistem.  Jadi, pengumpul sampah dapat melacak objek yang dibuat dalam program. Blok memori yang tidak lagi dibutuhkan dikirim kembali ke kumpulan memori sistem. Keuntungan utama dari proses ini adalah untuk mengkonfirmasi bahwa programmer tidak harus berkonsentrasi pada dealokasi memori. Itu menyeimbangkan kinerja dan penggunaan memori.

Apa itu destruktor?

Seorang destruktor adalah fungsi anggota khusus dari suatu kelas. Itu dipanggil setiap kali objek keluar dari ruang lingkup. Objek dapat dihancurkan saat fungsi berakhir atau di akhir eksekusi program. Destructor memiliki nama yang sama dengan nama kelas. Konstruktor digunakan untuk membuat objek. Itu bisa menerima parameter. Konstruktor juga dapat memiliki nilai pengembalian. Tetapi dalam destruktor, tidak ada jenis pengembalian atau parameter menerima. Kelas hanya dapat terdiri dari satu destruktor. Seorang destruktor dirujuk menggunakan tanda Tilde. Jika nama kelas adalah mahasiswa, maka destruktor adalah ~ student () .

Kolektor sampah mencari benda yang tidak diperlukan lagi. Ini memastikan bahwa objek yang tidak lagi digunakan oleh program harus dihancurkan. Itu memanggil destruktor untuk melepaskan memori dan menangani sumber daya.  Destructor berguna untuk melepaskan memori, menutup file, melepaskan sumber daya jaringan dan untuk menutup koneksi basis data.  Dalam sebagian besar bahasa pemrograman, tidak perlu menulis destruktor karena pengumpul sampah memanggil konstruktor default sendiri. Jika programmer telah melakukan alokasi memori dinamis menggunakan pointer dalam bahasa seperti C ++, maka ia harus menulis destruktor untuk melepaskan memori sebelum objek dihancurkan.

Apa kesamaan antara pengumpul sampah dan destruktor?

  • Kedua pengumpul sampah dan destruktor digunakan untuk melepaskan memori yang tidak lagi diperlukan untuk program ini.

Apa perbedaan antara pengumpul sampah dan destruktor?

Pengumpul sampah vs destruktor

Kolektor sampah adalah perangkat lunak yang melakukan manajemen memori otomatis. Seorang destruktor adalah metode khusus yang disebut oleh pengumpul sampah selama penghancuran objek.
 Jenis
Kolektor sampah adalah perangkat lunak. Seorang destruktor adalah sebuah metode.

Ringkasan - Pemulung vs Destruktor

Pengumpul sampah dan destruktor adalah dua istilah yang terkait dengan melepaskan memori. Artikel ini membahas perbedaan antara pengumpul sampah dan destruktor. Perbedaan antara pengumpul sampah dan destruktor adalah bahwa pengumpul sampah adalah perangkat lunak yang melakukan manajemen memori otomatis sementara destruktor adalah metode khusus yang disebut oleh pengumpul sampah selama penghancuran objek.

Unduh PDF Pengumpul Sampah vs Destruktor

Anda dapat mengunduh versi PDF dari artikel ini dan menggunakannya untuk tujuan offline sesuai catatan kutipan. Silakan unduh versi PDF di sini: Perbedaan antara pengumpul sampah dan destruktor

Referensi:

1.Lyndapodcast. “Bagaimana cara kerja Koleksi Sampah C# | Lynda. Tutorial com."Cara kerja Koleksi Sampah C# | Lynda.Tutorial com, Solusi Pembelajaran Linkedin, 19 September. 2011. Tersedia disini 
2.Destructor di c .”GeeksForgeeks, 27 Mei 2017. Tersedia disini  
3.Jain, Shubham. “Pengumpul sampah dan destruktor di C#.”C# Corner. Tersedia disini