Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Деструкторы, виртуальные деструкторы

Инкапсуляция | Базовый класс исключений, конструкторы, реализация собственного класса исключений | Атрибуты, создание собственного класса атрибута | Поиск нужного метода по имени и вызова его у данного экземпляра |


Читайте также:
  1. Виртуальные и физические адреса
  2. Виртуальные машины
  3. Виртуальные родители
  4. Конструкторы и деструкторы

Деструктор – специальный метод класса, служащий для освобождения ресурсов, занимаемых объектом.

В языке с управляемым кодом нет необходимости заниматься освобождением памяти. Есть Сборщик мусора (GC) – занимается учетом ссылок на каждый объект. Объекты, не имеющие ссылок на себя, утилизируются автоматически.

Виртуальный деструктор отличается от обычного тем же, чем и обычный метод от виртуального.

 

Пример деструктора:

 

class Destruct

{

public int x;

public Destruct(int i) { x = i; }

 

// Вызывается при утилизации объекта

~Destruct()

{

Console.WriteLine("Деструктуризация " + x);

}

}

 

 

Преобразование типов

Поскольку в C# тип определяется статически тип во время компиляции, после объявления переменной, она не может быть объявлена вновь или использоваться для хранения значений другого типа, если этот тип не преобразуется в тип переменной.

 

Пример:

 

Невозможно преобразование из целого числа в произвольную строку. Поэтому после объявления переменной i как целочисленной, нельзя ей присвоить строку "Hello".

 

int i;

i = "Hello"; // Ошибка

 

Но иногда может быть необходимым скопировать значение в переменную или параметр метода другого типа. Для этого используется явное и неявное преобразование.

 


Дата добавления: 2015-07-25; просмотров: 50 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Абстрактные методы, абстрактные классы.| Статические члены

mybiblioteka.su - 2015-2024 год. (0.006 сек.)