参考:
- https://blog.youkuaiyun.com/qq_22494029/article/details/79106050
- https://www.cnblogs.com/fnz0/p/5410856.html
1.自定义方法
重要的几个类:
- FileInputStream/FileOutputStream
- BufferInputStream/BufferOutputStream
- DataInputStream/DataOutputStream
详见:https://blog.youkuaiyun.com/qq_22494029/article/details/79106050
2.ObjectInputStream/ObjectOutputStream
重要的几个方法:
- readObject/writeObject
进阶:
- 反序列化不调用构造方法
- 聚合/组合对象也需实现Seriliazable接口
- 为了增加可拓展性,可以添加成员变量:private static final long serialVersionUID = 1L;
- 某个成员变量不想被序列化,可以使用关键字transient修饰。
- 多个对象的序列化:https://blog.youkuaiyun.com/PAcee1/article/details/79641700#commentsedit
- ObjectInputStream/ObjectOutputStream 在close的时候会先close掉FileInputStream/FileOutputStream
本文深入探讨了Java中序列化的关键概念,包括自定义方法、重要类如FileInputStream、BufferedInputStream、DataInputStream以及ObjectInputStream的使用。特别关注了序列化过程中如何避免调用构造方法,聚合对象的序列化需求,以及通过添加serialVersionUID来增强代码的可拓展性。同时,介绍了如何使用transient关键字排除特定变量的序列化,以及如何序列化多个对象。
5533

被折叠的 条评论
为什么被折叠?



