Java/Excercise

javaio ch05 SerializationTest

낭구리 2021. 9. 13. 17:58
package ch05;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;

class Person implements Serializable {
	String name;
	String job;

	public Person() {

	}

	public Person(String name, String job) {
		this.name = name;
		this.job = job;
	}

	@Override
	public String toString() {
		return name + ", " + job;
	}

}




public class SerializationTest {

	public static void main(String[] args) throws ClassNotFoundException {
		Person personLee = new Person("이순신", "대표이사");
		Person personKim = new Person("김유신", "상무이사");
		try (FileOutputStream fos = new FileOutputStream("serial.out");
				ObjectOutputStream oos = new ObjectOutputStream(fos)) {
			oos.writeObject(personLee);
			oos.writeObject(personKim);
		} catch (IOException e) {
			System.out.println(e);
		}

		/////////////////////
		
		try (FileInputStream fis = new FileInputStream("serial.out");
				ObjectInputStream oos = new ObjectInputStream(fis)) {
			Person p1 = (Person) oos.readObject();
			Person p2 = (Person) oos.readObject();//타입이 다르다 오브젝트를 다운캐스팅
			System.out.println(p1);
			System.out.println(p2);
			
		}catch (IOException e) {
			e.printStackTrace();
		}
		System.out.println("작업을 완료했습니다.");
	
	}

}

'Java > Excercise' 카테고리의 다른 글

dataStructure ch01 DataStructureTest2  (0) 2021.09.14
dataStructure ch01 DataStructureTest1  (0) 2021.09.14
javaio ch05 DataStreamTest  (0) 2021.09.13
javaio ch05 BufferedStreamTest  (0) 2021.09.13
javaio ch05 InputStreamReaderTest  (0) 2021.09.13