java에서는 오브젝트의 정보를 비트열로 만들어 파일 등에 기록하고,
다시 읽어 들여 원래의 오브젝트를 만들 수 있음!
이 때, 오브젝트를 비트열화하여 출력스트림으로 기록하는 것을시리얼라이즈
,
입력 스트림으로 읽어 들여 원래의 오브젝트로 만드는 것을디시리얼라이즈
라고 한다.
시리얼라이즈를 하기 위해서는 클래스에서 Serializable 인터페이스를 구현할 필요가 있음!
이 인터페이스에는 메서드가 없기 때문에, 오버라이딩할 필요는 없음~~
요렇게 사용하면 됩니다 🤗
import java.io.*; class A implements Serializable {}
비트열화한 오브젝트의 입출력을 수행하기 위해서는
ObjectInputStream
클래스와 ObjectOuputStream
클래스를 사용한다.
이것들은 바이트 스트림을 사용하는 클래스!
값의 의미 : 해당 객체의 버전을 명시하는 데 사용됨
여기서 serialVersionUID를 별도로 지정하지 않으면 자바 소스가 컴파일 될 때 자동으로 생김
serailVersionUID를 지정해주는 이유는 아래와 같음
ObjectOutputStream
클래스입니다.