为什么不能在活动之间传递List(NOT ArrayList)?

时间:2013-12-23 16:04:10

标签: java android android-activity

据我了解,如果List不是List,则无法在活动之间传递简单的ArrayList对象。我可能错过了一些方法吗?如果没有,有谁知道为什么谷歌会强迫用户在他们的代码中使用特定于实现的细节?

2 个答案:

答案 0 :(得分:4)

您可以传递显式实现,因为它们实现了Serializable,而它们的抽象和接口却没有。

列表和其他集合不是Serializable,因为这不是它们的定义。它们为其实现提供了选择,因为您还具有不可序列化的List实现。

这很重要,因为您可能希望在列表中保存不是为序列化保存的数据。在这些情况下,您可以选择对这些数据更好的选择,而不是被“List”强制进行序列化。

答案 1 :(得分:0)

因为有一个Application类可用于存储类似这些内容的引用等。