...
This compliant solution overcomes the problem of the noncompliant code example by using writeObject()
and readObject()
, ensuring that the tutor object referred to by the three students has a one-to-one mapping with the original Professor
object. So the The checkTutees()
method correctly returns true
.
Code Block | ||
---|---|---|
| ||
String filename = "serial"; try(ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(filename))) { // Serializing using writeUnshared oos.writeObject(jane); } catch (Exception e) { System.out.println("Exception during serialization" + e); } // Deserializing using readUnshared try(ObjectInputStream ois = new ObjectInputStream(new FileInputStream(filename))) { Professor jane2 = (Professor)ois.readObject(); System.out.println("checkTutees returns: " + jane2.checkTutees()); } catch (Exception e) { System.out.println("Exception during deserialization" + e); } |
...
[API 2011] | Class ObjectOutputStream |
...