Java 序列化是指:将一个对象转化成一串二进制表示的字节数组,经过保存或转移这些字节数据来达到持久化的目的。java
须要持久化,对象必须继承 java.io.Serializable 接口。数组
- 父类继承 java.io.Serializable 接口,全部的子类均可被序列化。
- 子类继承 java.io.Serializable 接口,父类没有,父类的属性不会被序列化(数据丢失),子类属性能正常序列化。
- 若是序列化的属性是对象,则对象必须继承 java.io.Serializable 接口,不然报错。
- 反序列化时,对象的属性有修改或删除,则修改的部分属性会丢失,但不会报错。
- 反序列化时,serialVersionUID 被修改,则反序列化会失败。