序列化概述
序列化是一个将对象转化成二进制字节流的过程。序列化过程其实是一个复杂的过程,它是由JVM帮我们完成的。
使用场景
所有在网络上传输的对象都必须是可序列化的。如:RMI (远程方法调用),传入的参数或返回的对象都是可序列化的,否则会出错。
所有必须保存到磁盘的java对象都必须是可序列化的。程序创建的JavaBean最好都实现Serializable接口。
序列化的实现
实现序列化有两种方式:实现Serializable接口或Externalizable接口,通常情况下,实现Serializable接口即可。两种接口的对比如下:
实现Serializable接口:
1) 系统自动存储必要的信息;
2) Java内建支持,易于实现,只需要实现接口,不需要任何代码支持;
3) 性能略差;
实现Externalizable接口:
1) 自己决定要序列化哪些属性;
2) 必须实现该接口内的两个方法:
void writeExternal(ObjectOutput out) throws IOException;
void readExternal(ObjectInput in) throws IOException, ClassNotFoundException;
3) 性能略好;
此处来源及具体代码实现的序列化操作等内容,请到:
https://blog.csdn.net/weixin_41427129/article/details/105756415