Inspectopedia
 
2024.3

Non-final field referenced in 'compareTo()'

Warning
New
Last modified: 03 December 2024

Reports access to a non-final field inside a compareTo() implementation.

Such access may result in compareTo() returning different results at different points in the object's lifecycle, which may in turn cause problems when using the standard collections classes, for example java.util.TreeSet.

A quick-fix to make the field final is available only when there is no write access to the field, otherwise no fixes are suggested.

Example:

After the quick-fix is applied: