package serialize;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.HashMap;

public class Main {
	
	public static class Fruit implements Serializable {
		private static final long serialVersionUID = 1L;
		private String szin;
		public Fruit (String szin) {
			this.szin = szin;
		}
		public String toString() {
			return szin;
		}
	}

	public static void main(String[] args) {
		HashMap<String, Fruit> map = new HashMap<>();
		map.put("Alma", new Fruit("piros"));
		map.put("Körte", new Fruit("zöld"));
		
		try (ObjectOutputStream outs = new ObjectOutputStream(new FileOutputStream("map.dat"));
				ObjectInputStream ins = new ObjectInputStream(new FileInputStream("map.dat"));
				) {
			outs.writeObject(map);
			
			@SuppressWarnings("unchecked")
			HashMap<String, Fruit> deserialized = (HashMap<String, Fruit>) ins.readObject();
			System.out.println(deserialized);
			
		} catch (IOException | ClassNotFoundException e) {
			e.printStackTrace();
		}
	}

}
