Finalizer is bassically a class, thats defined as : Every class has a special method, called a finalizer, which is called before an object is reclaimed by the Java VM garbage collector. The JVM calls the finalizer for us as appropriate; we never call a finalizer directly. Think of the
finalizer as a friendly warning from the virtual machine. Our finalizer should perform two tasks : > performing whatever cleanup is appropriate to the object, and
> Calling the superclass finalizer.
Finalizers are not guaranteed to be called just because an object becomes eligible for garbage collection, or before a program shuts down, so we should not rely on them.