![Destructor - Maximum Destruction [Full Album][1985]](https://i.ytimg.com/vi/6X5_76U2snA/hqdefault.jpg)
Содержание
- Определение - Что означает Деструктор?
- Введение в Microsoft Azure и Microsoft Cloud | Из этого руководства вы узнаете, что такое облачные вычисления и как Microsoft Azure может помочь вам перенести и запустить свой бизнес из облака.
- Техопедия объясняет деструктор
Определение - Что означает Деструктор?
Деструктор - это специальный метод, который вызывается автоматически при уничтожении объекта. Действия, выполняемые в деструкторе, включают в себя следующее:
- Восстановление пространства кучи, выделенного во время жизни объекта
- Закрытие соединения с файлом или базой данных
- Освобождение сетевых ресурсов
- Освобождение ресурсных блокировок
- Другие домашние дела
Введение в Microsoft Azure и Microsoft Cloud | Из этого руководства вы узнаете, что такое облачные вычисления и как Microsoft Azure может помочь вам перенести и запустить свой бизнес из облака.
Техопедия объясняет деструктор
Деструкторы вызываются явно в C ++. Однако в C # и Java это не так, поскольку выделение и освобождение памяти, выделенной объектам, неявно обрабатываются сборщиком мусора. В то время как деструкторы в C # и Java (называемые финализаторами) являются недетерминированными, деструкторы C # гарантированно будут вызываться во время выполнения .NET. Однако финализаторы Java должны вызываться явно, поскольку их вызов не гарантирован.
Основные свойства деструкторов можно обобщить следующим образом:
- Автоматический вызов и отсутствие явного вызова из кода пользователя
- Перегрузка или наследование не допускаются
- Доступ к модификаторам или параметрам, не указанным
- Порядок вызова деструктора в производном классе от самого производного к наименее производному
- Вызывается не только во время уничтожения объекта, но и когда экземпляр объекта больше не имеет права доступа
- Используется в классах, но не в структурах
- Используется только для освобождения дорогих неуправляемых ресурсов (таких как окна, сетевое подключение и т. Д.), Которые содержит объект, а не для освобождения управляемых ссылок