为啥开发时候java类要实现implements Serializable 接口,有什么好处?

什么叫做序列化?
序列化是讲对象类转化为二进制存入到文件中,反序列化是指把二进制码重新转换成Java对象的过程。存储时候进行序列化

目的:标志这个java类可以被序列化,也可以叫做持久化,将其写在磁盘中,可以进行网络传输,以二进制的形式保存在文件系统中。

如何检验是否序列化?
观察是否实现了implements Serializable 接口

ObjectOutputStream(序列化流)
ObjectOutputStream是序列化流,可以将Java程序中的对象写到文件中。
ObjectOutputStream 构造方法:
ObjectOutputStream(OutputStream out):参数要传递字节输出流。
ObjectOutputStream写对象的方法(特有方法):
void writeObject(Object obj): 向文件中写对象。

ObjectInputStream(反序列化流)
ObjectInputStream 是反序列化流, 可以将文件中的对象读取到 Java 程序中。
ObjectInputStream 的构造方法:
ObjectInputStream(InputStream in):参数要传递字节输入流。
ObjectInputStream 读取对象的方法(特有的方法):
Object readObject(): 从文件中读取对象,并将该对象返回。

好处?
传输速度加快,计算速度加快,也便于存储,由于电子元件的本质所致

作用
1、 提供一种简单又可扩展的对象保存恢复机制。
2、 对于远程调用,能方便对对象进行编码和解码,就像实现对象直接传输。
3、 可以将对象持久化到介质中,就像实现对象直接存储。
4、 允许对象自定义外部存储的格式。

posted @ 2022-06-10 14:22  凉忆~  阅读(504)  评论(0)    收藏  举报