Back to Intellij Community

NonFinalFieldInImmutable

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

2025.3-rc-2554 B
Original Source

Reports any non-final field in a class with the @Immutable annotation. This violates the contract of the @Immutable annotation.

Example:

import javax.annotation.concurrent.Immutable;
  @Immutable
  class Foo {
    String bar = "foo";
  }

Supported @GuardedBy annotations are:

  • net.jcip.annotations.GuardedBy
  • javax.annotation.concurrent.GuardedBy
  • org.apache.http.annotation.GuardedBy
  • com.android.annotations.concurrency.GuardedBy
  • androidx.annotation.GuardedBy
  • com.google.errorprone.annotations.concurrent.GuardedBy