Destructor

Destructor

Destructor — bu shunday member funksiyaki, ortiq kerak bo’lmaydigan classlarni destroy (o’chirish) qilishga imkon beradi. Ya’ni bir necha bor ishlatilingan classlarga bizning boshqa ehtiyojimiz bo’lmasa, uni destroy qiladi. Bu method .NET Framework Garbage collectoridan bilvosita chaqiriladi va shu sababli dasturchiga uni chaqirishga (invoke) aslo hojat qolmaydi. Qachonki o’zgaruvchilar va ob’ektlar (objects) reachable (erishish mumkin bo’lmasa — bu yerda o’zgaruvchi va ob’ektlarni ishlata olishimiz nazarda tutilayapti 😉 ) bo’lmasa, ularni destruct (o’chirish) qilishimiz mumkin.

Agar shundayam tushunmagan bo’lsangiz, unda sodda tilda tushuntiraman, Constructor qandaydir vazifani build (qurish)bajarishga asoslangan method bo’lsa, Destructor destroy (buzish) qilishga asoslanadi.

Shularni bilmasangiz bo’lmaydi!

class NimaGap
{ 
   // Bir nechta ishlar
   // O'zgaruvchi o'zgarmas va boshqalar

   // Destructor
   ~Misol()
    {
        // Yana qandaydir kodlar
    }
}
using System;
class Program
{
     static void Main(string[] args)
     {
         int yil = int.Parse(Console.ReadLine());

         Details();
         GC.Collect();
         Console.ReadLine();

     }
     public static void Details()
     {
         User user = new User();
     }
}

class User
{
     public User()
     {
         Console.WriteLine("Created");
     }
     ~User()
     {
         Console.WriteLine("Destroyed");
     }
}
OUTPUT:
    inputdan so'ng
    Created
    Destroyed

Dasturlash
Destructor