Sobes.tech
Junior — Middle

Czy możesz wyjaśnić, czym jest destruktor w programowaniu obiektowym?

sobes.tech AI

Odpowiedź od AI

Destruktor w programowaniu obiektowym to specjalna metoda klasy, która jest wywoływana automatycznie podczas usuwania obiektu lub gdy obiekt wychodzi z zakresu. Jego głównym zadaniem jest zwolnienie zasobów, które obiekt mógł zdobyć w trakcie swojego życia, takich jak zamknięcie plików, zwolnienie pamięci lub połączeń sieciowych.

W C# destruktor wygląda jak metoda o nazwie klasy, ale z tyldą (~) przed nią:

class MyClass
{
    ~MyClass()
    {
        // kod czyszczenia zasobów
    }
}

Ważne jest, aby pamiętać, że destruktory w C# działają w ramach mechanizmu zbierania śmieci i nie gwarantują natychmiastowego wywołania, dlatego lepiej używać interfejsu IDisposable i metody Dispose() do zwalniania zarządzanych zasobów.