9. Destruktor

Každá třída může obsahovat pouze jeden destruktor (anglicky „Destructor“). Tato metoda má za úkol připravit instanci k zániku – tedy uvolnit systémové prostředky, které instance v průběhu své existence získala např. uzavřít databázová spojení, zavřít otevřený soubor apod.

Deklarace destruktoru má tvar:

~jménoTřídy( ) těloDestruktoru

kde: 

  • vlnovka (neboli tilda – na české klávesnici Alt+126) se umísťuje před jméno třídy. Destruktor nesmí mít parametry a jeho deklarace nesmí obsahovat žádný modifikátor přístupu a ani typ návratové hodnoty. Destruktor nelze volat ve zdrojovém kódu. Prostředí .NET Framework si ho zavolá těsně před tím, než automatická správa paměti (Garbage Collector) odstraní instanci z paměti. Destruktory se nedědí. [3]