Customizing destructors in C#

We want to know when the instances of the Circle class are removed from memory, that is, when the objects go out of scope and the garbage-collection mechanism removes them from memory. Destructors are the special class methods that are automatically executed when the run time destroys an instance of a given type. Thus, we can use them to add any code we want to run before the instance is destroyed.

The destructor is a special class method that uses the same name as the class, but prefixed with a tilde (~): ~Circle. The destructor must be parameterless, and it cannot return a value.

The following lines declare a destructor (a ~Circle method) within the body of the Circle class:

~Circle() { Console.WriteLine(String.Format("I'm ...

Get Learning Object-Oriented Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.