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.