Object.finalize()
is called by the Garbage Collector sometime after the object became unreferenced.
Overloading this method is misleading:
Object.finalize()
and will get confused.Another name should be picked for the method.
The following code:
public void finalize(int someParameter) { // Non-Compliant /* ... */ }
should be refactored into:
public void someBetterName(int someParameter) { // Compliant /* ... */ }