它们用于对象的编组/解组。如果我们谷歌我们得到如上所述的第一个结果。但到目前为止,我创建的类没有实现那些。所以我编码错误或遗漏了什么?另外,我应该在哪里使用它们?
答案 0 :(得分:2)
为什么我们使用Parceable / Serializable?
许多应用都没有自定义Parcelable
或Serializable
类。
我编码错误或遗漏了什么?
可能不是。
另外,我应该在哪里使用它们?
总的来说,我怀疑你可以过上长寿幸福的生活,从不实施Parcelable
或Serializable
。
关于Parcelable
,这是一个用于创建对象的接口,其内容可以跨越进程边界(从应用程序到应用程序或从应用程序到OS)。许多框架类(如Intent
和Bundle
)都是Parcelable
。一些开发人员为以下内容创建自定义Parcelable
类:
onSaveInstanceState()
Intent
用于在活动之间传递数据的附加内容就个人而言,我试图避免这种情况,如there are some risks when using custom Parcelable
classes。
Serializable
是一种遗留Java机制,用于创建可以保存到磁盘并在以后恢复的对象。 AFAIK,现在在Java界普遍不赞成,因为有更好的数据存储解决方案。就在流程之间传递对象而言,Serializable
几乎可以在任何地方使用Parcelable
。 Parcelable
速度更快,因此除非您正在寻找古老的数据存储支持,否则请Parcelable
到Serializable
。
答案 1 :(得分:0)
Parcelables优于Serializable。 Parcelables用于在活动之间传递对象。请注意,设置一个Parcelable可能会很痛苦,所以像Parceler这样的库就是很棒的工具。