我目前正在尝试学习和了解如何将用户输入的数据存储为文件。
目前,我有“电影”和“系列”课程以及“MediaLibrary”课程。
现在的问题是:哪些类必须实现Serializable?
我只需要在MediaLibrary中实现它(因为我存储了ArrayList中其他类的对象),还是其他类也需要Serializable?
感谢您的帮助。
LevKaz
编辑1:是什么让我的问题与可能重复的问题不同? 在可能的副本中,这个人问,为什么不是所有对象都是可序列化的,因为他不想在每个类中编写它。我想知道(并理解)是否足以序列化一个持有其他对象的类,或者是否所有对象都必须实现可序列化的接口。
希望我把我的问题与Ali Seyedi建议的问题区别开来。
答案 0 :(得分:3)
如果您希望仅通过编写implements Serializable
来工作,那么所有类都需要Serializable
,否则在尝试序列化ArrayList
时会抛出异常
您 可以以movies
series
Serializable
编写writeObject
,而不是写movies
和series
ObjectOutputStream
对象,你直接写他们的字段。但是,除非您非常有充分理由这样做,否则不应采用这种方法。