Back to Intellij Community

ThreadStartInConstruction

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

2025.3-rc-2544 B
Original Source

Reports calls to start() on java.lang.Thread or any of its subclasses during object construction.

While occasionally useful, such constructs should be avoided due to inheritance issues. Subclasses of a class that launches a thread during the object construction will not have finished any initialization logic of their own before the thread has launched.

This inspection does not report if the class that starts a thread is declared final.

Example:

class MyThread extends Thread {
    MyThread() {
      start();
    }
  }