Inspectopedia Help

Transient field is not initialized on deserialization

Reports transient fields that are initialized during normal object construction, but whose class does not have a readObject method.

As transient fields are not serialized they need to be initialized separately in a readObject() method during deserialization.

Any transient fields that are not initialized during normal object construction are considered to use the default initialization and are not reported by this inspection.

Example:

class Person implements Serializable { transient String name = "Default"; //warning, can actually be a null after deserialization transient String surname; //null is considered the default value and not reported }

Inspection Details

By default bundled with:

IntelliJ IDEA 2024.1, Qodana for JVM 2024.1,

Can be installed with plugin:

Java, 241.16690

Last modified: 29 April 2024