一、什么是序列化
序列化: 将对象的状态信息转换为可以存储或传输的形式过程. 在序列化期间,对象将当前状态写入到临时或持久性存储区. 以后,可以通过存储区中读取或反序列化对象的状态, 重写创建该对象
个人理解: 将对象转换为二进制流 可以保存或传输 并可以通过反序列化将对象重新获取到
二、serializable的好处
- 可以将对象转换为字节数据 使其在保存和传输时可以被还原
序列化时RMI(Remote Method Invoke - 远程方法调用)过程的参数和返回值都必须实现的机制
- RMI是JavaEE的基础
三、实现对象序列化(Serializable)
实现Serializable接口
- 设置静态常量 serialVersionUID
- public static final long serialVersionUID
- serialVersionUID等同于对象转换为字节流后的身份标识 不进行设置 在反序列化时可能会导致无法反序列化
- 保证序列化对象的所有属性都是可以序列化的