1.什么是序列化?
简单说就是为了保存在内存中的各种对象的状态,并且可以把保存的对象状态再读出来。虽然你可以用你自己的各种各样的方法来保存Object States,
但是Java给你提供一种应该比你自己好的保存对象状态的机制,那就是序列化
java源码中的解释:The serialization runtime associates with each serializable class a version number, called
a serialVersionUID, which is used during deserialization to verify that the sender and receiver of a serialized
object have loaded classes for that object that are compatible with respect to serialization.
2.为什么要使用序列化:
对象被创建在堆上,为了将对象持久化保存到文件中,并且能从文件中重新获取该对象的属性和值(这只是一种情况,也可能进行网络传输,保存数据到数据库等等),
需要将该对象序列化,因为在从文件获取该对象的时候,序列化就会被告知加载哪个类去实例化这个对象。
3.如何序列化
实现Serializable接口,生成序列化id
transient关键字:忽略序列化字段