Non-serializable field in a 'Serializable' class
Reports non-serializable fields in classes that implement java.io.Serializable
. Such fields will result in runtime exceptions if the object is serialized.
Fields declared transient
or static
are not reported, nor are fields of classes that have a writeObject
method defined.
This inspection assumes fields of the types java.util.Collection
and java.util.Map
to be Serializable
, unless the types they are declared in are non-Serializable
.
Example:
Use the following options to configure the inspection:
List classes whose inheritors should not be reported by this inspection. This is meant for classes that inherit
Serializable
from a superclass but are not intended for serialization.List annotations that will make the inspection ignore the annotated fields.
Whether to ignore fields initialized with an anonymous class.
Inspection options
Option | Type | Default |
---|---|---|
Ignore subclasses of | StringList | [java.awt.Component] |
Ignore if annotated by | StringList | [] |
Ignore anonymous inner classes | Checkbox | false |
Inspection Details | |
---|---|
Available in: | IntelliJ IDEA 2023.3, Qodana for JVM 2023.3 |
Plugin: | Java, 233.SNAPSHOT |