java.io.Serializable을 구현하는 클래스 내 직렬화할 수 없는 필드를 보고합니다. 그러한 필드는 객체가 직렬화되는 경우 런타임 예외를 발생시킵니다.
transient 또는 static으로 선언된 필드 또는 writeObject 메서드가 정의된 클래스의 필드는 보고되지 않습니다.
이 검사는 선언된 타입이 Serializable 이외의 객체가 아닌 이상 java.util.Collection 및
java.util.Map 타입의 필드는 Serializable이라고 가정합니다.
예:
class NonSerializableClass {}
public class SerializableClass implements Serializable {
NonSerializableClass clazz; // 경고: Serializable 클래스 내 직렬화할 수 없는 필드
static NonSerializableClass staticClazz; // 경고 안 함
}
다음 옵션을 사용해 검사를 구성하세요.
Serializable을 상속받지만 직렬화를 의도하지 않은 클래스를 의미합니다.