Back to Intellij Community

AccessToNonThreadSafeStaticFieldFromInstance

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

2025.3-rc-2677 B
Original Source

Reports access to static fields that are of a non-thread-safe type.

When a static field is accessed from an instance method or a non-synchronized block, multiple threads can access that field. This can lead to unspecified side effects, like exceptions and incorrect results.

Example:

class Sample {
    private static final SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    String method() {
      return df.format("");
    }
  }

You can specify which types should be considered not thread-safe. Only fields with these exact types or initialized with these exact types are reported, because there may exist thread-safe subclasses of these types.