Inspectopedia Help

Unsynchronized method overrides 'synchronized' method

Reports non-synchronized methods overriding synchronized methods.

The overridden method will not be automatically synchronized if the superclass method is declared as synchronized. This may result in unexpected race conditions when using the subclass.

Example:

class Super { synchronized void process() {} } class Sub extends Super { // Unsynchronized method 'process()' overrides synchronized method void process() {} }

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023