小编Esp*_*dal的帖子

Realm模型真的需要getter和setter吗?

如果Realm Model中的字段实际上需要getter和setter,我无法在任何地方找到它.例如,https://realm.io/docs/java/latest/api/io/realm/RealmObject.html上的文档说

RealmObject唯一的限制是不允许字段为final,transient或volatile.允许使用任何方法和公共字段.提供自定义构造函数时,必须声明不带参数的公共构造函数并为空.

使用Ignore注释的字段没有这些限制,也不需要getter或setter.

这似乎暗示了getter和setter对于非忽略字段的要求.然而,https : //realm.io/docs/java/latest/#customizing-objects上的文档说

可以像使用POJO一样使用RealmObjects.从RealmObject扩展,您可以让字段公开,并使用简单的赋值而不是setter和getter.

然后显示一个没有任何getter和setter的Realm Model的代码,而是有我们应该使用的公共字段.真?我认为Realm甚至没有在实际字段中存储任何值,所以从它们读取和写入可能是一个坏主意?我的意思是他们的调试文档https://realm.io/docs/java/latest/#debugging state:

不幸的是,这些值是错误的,因为不使用字段值.Realm在幕后创建一个代理对象,并覆盖getter和setter,以便访问Realm中的持久数据

那么有人可以赐教吗?我可以跳过getter和setter,只是坚持公共领域吗?有没有关于此的全面文档?

android realm

10
推荐指数
1
解决办法
1288
查看次数

标签 统计

android ×1

realm ×1