In object-oriented programming, a destructor (sometimes abbreviated dtor) is a method which is invoked mechanically just before the memory of the object is released. … Its main purpose is to free the resources (memory allocations, open files or sockets, database connections, resource locks, etc.)