객체를 저장했다 복원이 가능하다.
serializable 인터페이스 : object를 파일에 저장하는 기능
객체를 바이트 stream으로 만든 후 파일에 차례대로 집어넣는다. = 직렬화
문자와 더블형의 데이터를 바이트스트림으로 저장
package ex00.fileio.objserialize;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
public class ObjectSerialize {
public static void main(String[] args) throws FileNotFoundException, IOException, ClassNotFoundException {
Person person = new Person();
person.name = "홍길동";
person.address = "지리산";
person.height = 174.5;
person.weight = 78.5;
// 1) 객체를 시리얼라이즈해주는 필터와 결합하는 out 스트림 생성
ObjectOutputStream objOut = new ObjectOutputStream(
new FileOutputStream("Object.ser"));
// 2) 객체 저장
objOut.writeObject(person);
// 3) 스트림 닫기
objOut.close();
ObjectInputStream objIn = new ObjectInputStream(
new FileInputStream("Object.ser"));
Person p = (Person)objIn.readObject(); //객체 읽어들임
objIn.close();
System.out.println(p.name);
System.out.println(p.address);
System.out.println(p.height);
System.out.println(p.weight);
}
}