我需要使用Realm的list<Object>
。我尝试了RealmList<RealmObject>
,但是它不起作用,因为RealmObject
是抽象的。
最佳答案
来自Realm的基督徒。您只能在Realm中保存扩展RealmObject的对象。这是因为Realm不是无模式数据库。我们确实需要一个模式,并且该模式由扩展RealmObject的对象定义。我们使用RealmList是因为它抽象化了与基础核心数据库的通信,但是它实现了List接口(interface)。
这意味着
public class Foo extends RealmObject {
private List<Object> objects; // not legal
private RealmList<Object> objects; // not legal
private RealmList<RealmObject> objects; // not legal
}
public class Foo extends RealmObject {
private RealmList<Foo> objects; // legal
}
List<Foo> reference = foo.getObjects(); // Legal