什么是序列化,怎么序列化,为什么序列化,反序列化会遇到什么问题,如何解决?

什么是序列化

序列化:把对象转换为字节序列的过程称为对象的序列化。
反序列化:把字节序列恢复为对象的过程称为对象的反序列化。

如何实现序列化:

实现Serializable接口即可

ObjectOutputStream代表对象输出流:

它的writeObject(Object obj)方法可对参数指定的obj对象进行序列化,把得到的字节序列写到一个目标输出流中。

ObjectInputStream代表对象输入流:

它的readObject()方法从一个源输入流中读取字节序列,再把它们反序列化为一个对象,并将其返回。

为什么序列化

当你想把的内存中的对象状态保存到一个文件中或者数据库中时候;
当你想用套接字在网络上传送对象的时候;
当你想通过RMI传输对象的时候;

意思就是当你想要保存对象时,需要序列化

反序列化会遇到什么问题

NotSerializableException 未实现序列化接口
InvalidClassException uid 号不一致

猜你喜欢

转载自blog.csdn.net/weixin_45627031/article/details/112911206