序列化:对象-->文件--ObjectOutputStream--序列化流
反序列化流:文件->
/**************************************************************************
序列化的思路:
1)需要准备序列化对象+序列化到哪里的目标文件路径
2)序列化对象所在的类必须要实现序列化接口,不实现会报错
3)创建序列化流对象OOs out=new OOS(new FIS(file/路径));
4)使用流进行对象的序列化输出out.writeObject(s);
5)关流
反序列化思路
1)前提:之前有序列化的数据,通过反序列化恢复对象
2)序列化版本号必须保持一致,不一致就报错,最好一次序列化对应一次反序列化
3)创建反序列化对象OIS in=new OIS(new FIS(FIS/路径));
4)使用反序列化流回复对象Object o=in,readObject();
5)关流in.close();
============================================
关于序列化版本号不一致报错的解决方案
1.手动添加UID指将(UID的值写死,怎么样都不会改变)可以任意序列化与反序列化
private static final long seralVersionUID=1L;
2不手动添加,自动生成,那就需要注意,每次编译都会生成以一个新UID
所以一次序列化需要对应一次反序列化,如果更改了目标类(student)类中的内容
一定要先序列化,再反序列化
序列化与反序列化
最新推荐文章于 2023-03-03 18:27:08 发布