Arrange things so that #finalize is sent to the object when the garbage
collector finds out there are only weak references to it.
finalize
Do nothing by default
mourn
This method is sent by the VM to weak and ephemeron objects when one of
their fields is found out to be garbage collectable (this means, for weak
objects, that there are no references to it from non-weak objects, and
for ephemeron objects, that the only paths to the first instance variable
pass through other instance variables of the same ephemeron). The default
behavior is to do nothing.
removeToBeFinalized
Unregister the object, so that #finalize is no longer sent to the object
when the garbage collector finds out there are only weak references to it.