Daftar Isi:
Definisi - Apa yang dimaksud dengan Destructor?
Destruktor adalah metode khusus yang disebut secara otomatis selama penghancuran objek. Tindakan yang dijalankan di destructor meliputi:
- Memulihkan ruang tumpukan yang dialokasikan selama masa objek
- Menutup koneksi file atau basis data
- Melepaskan sumber daya jaringan
- Melepaskan kunci sumber daya
- Tugas tata graha lainnya
Techopedia menjelaskan Destructor
Destructor disebut secara eksplisit dalam C ++. Namun, dalam C # dan Java ini tidak terjadi, karena alokasi dan pelepasan memori yang dialokasikan untuk objek secara implisit ditangani oleh pengumpul sampah. Sementara destruktor di C # dan Java (disebut finalizers) bersifat nondeterministik, destruktor C # dijamin akan dipanggil oleh run time .NET. Namun, finalizer Java harus secara eksplisit dipanggil karena doa mereka tidak dijamin.
Properti utama destruktor dapat diringkas sebagai berikut:
- Doa otomatis dan tidak ada panggilan eksplisit dari kode pengguna
- Kelebihan atau warisan tidak diizinkan
- Pengubah akses atau parameter tidak ditentukan
- Urutan panggilan ke destruktor dalam kelas turunan adalah dari yang paling diturunkan ke yang paling diturunkan
- Dipanggil tidak hanya selama penghancuran objek, tetapi juga saat instance objek tidak lagi memenuhi syarat untuk akses
- Digunakan di kelas tetapi bukan struct
- Digunakan hanya untuk mengeluarkan sumber daya tak terkelola yang mahal (seperti windows, koneksi jaringan, dll.) Yang disimpan oleh objek, bukan untuk melepaskan referensi terkelola