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