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
/* ... */
}