Inspectopedia Help

'record' contains ignored members

Reports serialization methods or fields defined in a record class. Serialization methods include writeObject(), readObject(), readObjectNoData(), writeExternal(), and readExternal() and the field serialPersistentFields. These members are not used for the serialization or deserialization of records and therefore unnecessary.

Examples:

record R1() implements Serializable { // The field is ignored during record serialization @Serial private static final ObjectStreamField[] serialPersistentFields = new ObjectStreamField[0]; // The method is ignored during record serialization @Serial private void writeObject(ObjectOutputStream out) throws IOException { } }
record R2() implements Externalizable { // The method is ignored during record serialization @Override public void writeExternal(ObjectOutput out) throws IOException { } // The method is ignored during record serialization @Override public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { } }

This inspection only reports if the language level of the project or module is 14 or higher.

New in 2020.3

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023