Back to Intellij Community

EqualsWhichDoesntCheckParameterClass

java/java-impl/resources/inspectionDescriptions/EqualsWhichDoesntCheckParameterClass.html

2025.3-rc-2434 B
Original Source

Reports equals() methods that do not check the type of their parameter.

Failure to check the type of the parameter in the equals() method may result in latent errors if the object is used in an untyped collection.

Example:

class MyClass {
    int x;

    @Override
    public boolean equals(Object obj) {
      // equals method should return false if obj is not MyClass
      return ((MyClass)obj).x == x;
    }
  }