为什么需要对象处理流

将对象保存至文件,则可以存储/传输。

序列化和反序列化

  • 序列化就是在保存数据时,保存数据的值和数据类型;
  • 反序列化就是在恢复数据时,恢复数据的值和类型;

关于对象处理流

  • 如果需要让某个对象被对象处理流使用,则需要让它支持序列化机制,让其可序列化,因此必须实现下面的两个接口之一;
    • Serializable
    • Externalizable
  • 读写的顺序要一致,否则会报错;
  • 序列化对象时,默认将里面所有属性都进行序列化,但除了 static 或 transient 修饰的成员;
  • 序列化对象时,要求里面属性的类型也需要实现序列化接口;
  • 序列化具备可继承性,也就是如果某类已经实现了序列化,则它的所有子类也已经默认实现了序列化;