Inspectopedia Help

Missing '@Override' annotation

Reports methods overriding superclass methods but are not annotated with @java.lang.Override.

Annotating methods with @java.lang.Override improves code readability since it shows the intent. In addition, the compiler emits an error when a signature of the overridden method doesn't match the superclass method.

Example:

class X { public String toString() { return "hello world"; } }

After the quick-fix is applied:

class X { @Override public String toString() { return "hello world"; } }

Locating this inspection

By ID

Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.

override
Via Settings dialog

Path to the inspection settings via IntelliJ Platform IDE Settings dialog, when you need to adjust inspection settings directly from your IDE.

Settings or Preferences | Editor | Inspections | Java | Inheritance issues

Configure the inspection:

  • Use the Ignore 'equals()', 'hashCode()' and 'toString()' option to ignore these java.lang.Object methods: equals(), hashCode(), and toString(). The risk that these methods will disappear and your code won't be compiling anymore due to the @Override annotation is relatively small.

  • Use the Ignore methods in anonymous classes option to ignore methods in anonymous classes.

  • Disable the Highlight method when its overriding methods do not all have the '@Override' annotation option to only warn on the methods missing an @Override annotation, and not on overridden methods where one or more descendants are missing an @Override annotation.

This inspection depends on the Java feature 'Annotations', which is available since Java 5.

Inspection options

Here you can find the description of settings available for the Missing '@Override' annotation inspection, and the reference of their default values.

Ignore 'equals()', 'hashCode()' and 'toString()' methods

Default: Selected

Ignore methods in anonymous classes

Not selected

Highlight method when its overriding methods do not all have the '@Override' annotation

Default: Selected

Inspection Details

By default bundled with:

IntelliJ IDEA 2024.2, Qodana for JVM 2024.2,

Can be installed with plugin:

Java, 242.22892

Last modified: 11 September 2024