java.io.Serializable を実装しているクラスの非 Serializable フィールドを報告します。 このようなフィールドは、オブジェクトがシリアル化されている場合にランタイム例外を引き起こします。
transient または static で宣言されているフィールドは報告されません。また、writeObject メソッドが定義されているクラスのフィールドも報告されません。
このインスペクションは型 java.util.Collection および java.util.Map のフィールドについて、その宣言を含む型が非 Serializable でない限りは Serializable であると仮定します。
例:
class NonSerializableClass {}
public class SerializableClass implements Serializable {
NonSerializableClass clazz; // 警告: Serializable クラス内に非 Serializable フィールド 'clazz' があります
static NonSerializableClass staticClazz; // 警告なし
}
このインスペクションは、次のオプションを使用して構成できます。
Serializable を継承しているものの、シリアル化を目的としていないクラスを対象としています。