为什么Serializable接口不需要实现readObject()和writeObject()

时间:2014-03-12 22:15:35

标签: java serialization

为什么Serializable只是标记界面,并且不需要合同实施readObject()writeObject()。它不会更有意义吗?

1 个答案:

答案 0 :(得分:2)

序列化机制能够在没有任何readObject()writeObject()方法的情况下序列化对象。但它要求您指定它可以或不能序列化的对象。有些对象保存数据,序列化是有意义的。其他一些则没有。例如,序列化String是有意义的,但序列化Socket或数据库连接则没有。 因此,您只需通过使其类实现Serializable接口来标记哪些对象可以序列化。

如果您想要更多地控制对象的状态被序列化和反序列化,那么您可以使用这两种方法。