java.io.ObjectOutputStream.write()의 인수로 사용된 비 Serializable 객체를 보고합니다. 그러한 호출은 런타임 예외를 발생시킵니다.

이 검사는 선언된 타입이 비 Serializable 객체가 아닌 이상 java.util.Collectionjava.util.Map 타입의 객체는 Serializable이라고 가정합니다.

예:


  public class IWantToSerializeThis {
    public static void main(String[] args) throws IOException {
      try(var stream = new ObjectOutputStream(Files.newOutputStream(Paths.get("output")))) {
        // 경고 -- NotSerializableException이 발생하며 실패합니다
        stream.writeObject(new IWantToSerializeThis());
      }
    }
  }