public static void createObjectBySerializable() throwsIOException, ClassNotFoundException {
Clerk clerk= newClerk();
clerk.setId(123);
clerk.setName("xxx");
Company company= newCompany();
company.setName("nmt");
company.setClerk(clerk);
OutputStream fileOutputStream= new FileOutputStream("bak.tmp");
ObjectOutputStream outputStream= newObjectOutputStream(fileOutputStream);
outputStream.writeObject(company);
InputStream fileInputStream= new FileInputStream("bak.tmp");
ObjectInputStream inputStream= newObjectInputStream(fileInputStream);
Company scompany=(Company) inputStream.readObject();
System.out.println(company);
System.out.println(company.getClerk());
company.setName("company one");
company.getClerk().setId(888);
company.getClerk().setName("xxx");
System.out.println(scompany);
System.out.println(scompany.getClerk());
scompany.getClerk().setId(999);
scompany.getClerk().setName("yyy");
scompany.setName("company two");
System.out.println(company.getName());
System.out.println(company.getClerk().getId());
System.out.println(company.getClerk().getName());
System.out.println("----------------------------");
System.out.println(scompany.getName());
System.out.println(scompany.getClerk().getId());
System.out.println(scompany.getClerk().getName());
}