Back to Intellij Community

StaticInitializerReferencesSubClass

java/java-impl/resources/inspectionDescriptions/StaticInitializerReferencesSubClass.html

2025.3-rc-2392 B
Original Source

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.

Example:

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