Inspectopedia Help

Static initializer references subclass

Reports classes that refer to their subclasses in static initializers or static fields.

Such references can cause JVM-level deadlocks in multithreaded environment, when one thread tries to load the superclass and another thread tries to load the subclass at the same time.


class Parent { static final Child field = new Child(); } class Child extends Parent { }

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3


Java, 233.SNAPSHOT

Last modified: 13 July 2023