객체 직렬화(Serialization)란?

객체 직렬화는 Java 객체를 바이트 스트림(byte stream)으로 변환하는 과정입니다. 이를 통해:

직렬화 방법

  1. 직렬화하려는 클래스가 Serializable 인터페이스를 구현해야 합니다:
import java.io.Serializable;

public class Person implements Serializable {
		private static final long serialVersionUID = 1L;
		// 이하 생략
}
  1. ObjectOutputStream을 사용하여 객체를 직렬화합니다:
Person person = new Person("김철수", 25);

// 파일에 객체 직렬화하기
try (FileOutputStream fos = new FileOutputStream("person.ser");
     ObjectOutputStream oos = new ObjectOutputStream(fos);
) {
    oos.writeObject(person);
} catch (IOException e) {
    e.printStackTrace();
}

역직렬화(Deserialization)란?

역직렬화는 바이트 스트림을 다시 Java 객체로 변환하는 과정입니다.

역직렬화 방법

ObjectInputStream을 사용하여 바이트 스트림을 객체로 복원합니다: