我在Stackoverflow中看到了这篇文章。如果我想将一个对象传递给另一个活动,则该类应可序列化。所以我的问题是,是否可以将可序列化实现为Pojo类?如果我要实现Serializable或Parcelable,是否有任何冲突?
答案 0 :(得分:2)
只要您的POJO的每个成员还实现了Serializable,您就可以了。
仅当您的POJO包含一个子成员(另一个POJO)并且该POJO没有实现Serializable时,才会发生冲突。
默认情况下,像String,int,enums等成员是可序列化的,因此,只有在存在不实现Serializable的非平凡属性时,才应注意。
答案 1 :(得分:1)
是的,可以对POJO类实现Serializable或Parcelable。 首先,简单介绍一下: 可序列化是标准的Java接口。它正在使用反射,这是一个缓慢的过程。这种方法会创建许多临时对象,并导致大量垃圾回收。 可拆分过程比可序列化要快得多。它是Java Serializable的Android实现。它假定某种结构和处理方式。与标准Java序列化相比,这种方式可以相对快速地处理Parcelable。
答案 2 :(得分:1)
所以我的问题是,有可能实现可序列化到Pojo类吗?
是的。只需将implements Serializable
添加到您的POJO类中,您的班级将为serializable
。因此,如果您需要在活动之间传递对象,则必须使您的类和子类可序列化。
public class ModelClass implements Serializable {}
如果我要实现Serializable或Parcelable,是否有冲突?
不,完全没有冲突,但是在使用一个或另一个接口时应注意一些差异。因此,我建议您查看以下帖子:Parcelable与Serializable。