Mega Code Archive

 
Categories / Java Tutorial / File
 

Class combination Serialization

import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; import java.util.ArrayList; import java.util.List; class ID implements Serializable { } class Employee implements Serializable {   private String name;   private ID myID;   Employee(String nm, ID h) {     name = nm;     myID = h;   }   public String toString() {     return name + "[" + super.toString() + "], " + myID + "\n";   } } public class MainClass {   public static void main(String[] args) throws IOException, ClassNotFoundException {     ID id = new ID();     List employees = new ArrayList();     employees.add(new Employee("A", id));     employees.add(new Employee("B", id));     employees.add(new Employee("C", id));     System.out.println("employees: " + employees);     ByteArrayOutputStream buf1 = new ByteArrayOutputStream();     ObjectOutputStream o1 = new ObjectOutputStream(buf1);     o1.writeObject(employees);     o1.writeObject(employees);      ByteArrayOutputStream buf2 = new ByteArrayOutputStream();     ObjectOutputStream o2 = new ObjectOutputStream(buf2);     o2.writeObject(employees);     ObjectInputStream in1 = new ObjectInputStream(new ByteArrayInputStream(buf1.toByteArray()));     ObjectInputStream in2 = new ObjectInputStream(new ByteArrayInputStream(buf2.toByteArray()));     List emp1 = (List) in1.readObject(), emp2 = (List) in1.readObject(), emp3 = (List) in2         .readObject();     System.out.println("emp1: " + emp1);     System.out.println("emp2: " + emp2);     System.out.println("emp3: " + emp3);   } } /* */ employees: [A[Employee@126b249], ID@182f0db , B[Employee@192d342], ID@182f0db , C[Employee@6b97fd], ID@182f0db ] emp1: [A[Employee@750159], ID@1abab88 , B[Employee@18a7efd], ID@1abab88 , C[Employee@1971afc], ID@1abab88 ] emp2: [A[Employee@750159], ID@1abab88 , B[Employee@18a7efd], ID@1abab88 , C[Employee@1971afc], ID@1abab88 ] emp3: [A[Employee@16cd7d5], ID@cdedfd , B[Employee@1c39a2d], ID@cdedfd , C[Employee@bf2d5e], ID@cdedfd ]