Inspectopedia Help

Overridable method called during object construction

Reports calls to overridable methods of the current class during object construction.

A method is called during object construction if it is inside a:

  • Constructor

  • Non-static instance initializer

  • Non-static field initializer

  • clone() method

  • readObject() method

  • readObjectNoData() method

Methods are overridable if they are not declared as final, static, or private. Package-local methods are considered safe, even though they are overridable. Such calls may result in subtle bugs, as object initialization may happen before the method call.

Example:

class Parent { void someMethod() { } } class Child extends Parent { Child() { someMethod(); } }

This inspection shares the functionality with the following inspections:

  • Abstract method called during object construction

  • Overridden method called during object construction

Only one inspection should be enabled at once to prevent warning duplication.

Inspection Details

By default bundled with:

IntelliJ IDEA 2024.1, Qodana for JVM 2024.1,

Can be installed with plugin:

Java, 241.16690

Last modified: 29 April 2024