Book Image

Learning Object-Oriented Programming

By : Gaston C. Hillar
Book Image

Learning Object-Oriented Programming

By: Gaston C. Hillar

Overview of this book

Table of Contents (16 chapters)
Learning Object-Oriented Programming
Credits
About the Author
Acknowledgments
About the Reviewers
www.PacktPub.com
Preface
Index

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 destroying the Circle instance with a radius value of {0}.", radius));
}

The code within the destructor prints a message on the console indicating that the runtime is destroying a Circle instance with a specific radius value. This way, we...