Inspectopedia Help

Non-final field in '@Immutable' class

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

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023