如何在 Realm 使用的内容类中保持相同

问题描述 投票:0回答:1

我需要创建许多相同的内容类,如下面的类

public abstract class AbstractListModel  extends RealmObject {
@PrimaryKey
private String id;
private String name;

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

如果我在另一个类中扩展这个类,似乎会有很多空类,因为它们只有 2 个包含在母类中的字段(id 和 name)。

public class LectureHallListModel extends AbstractListModel {
//@PrimaryKey
//private String id;
//private String name;

//public String getId() {
//    return id;
//}

//public void setId(String id) {
//    this.id = id;
//}

//public String getName() {
//    return name;
//}

//public void setName(String name) {
//    this.name = name;
//}
}

有什么方法可以在不创建空类的情况下向数据库添加几个相同的内容表?

谢谢!

android realm
1个回答
0
投票

Realm 不支持字段继承(从技术上讲,来自任何不直接

RealmObject
的类)。

您需要进行以下设置:

public interface AbstractListModel {
    String getId();
    void setId(String id);
    String getName();
    void setName(String name);
}

还有

public class LectureHallListModel extends RealmObject implements AbstractListModel {
    @PrimaryKey
    private String id;
    private String name;

    @Override
    public String getId() {
        return id;
    }

    @Override
    public void setId(String id) {
        this.id = id;
    }

    @Override
    public String getName() {
        return name;
    }

    @Override
    public void setName(String name) {
        this.name = name;
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.