34

Kotlin と Realm を使用してデータ クラスを記述しています

data class AuthToken(val register: Boolean,
                     val token: String,
                     val tokenSecret: String,
                     val user: AuthUser)

データを db に保存する必要があるため、Realm を使用して保存します。しかし、ご存知のように、クラスを Realm に保存するには、AuthTokenクラスを拡張する必要がありRealmObjectます。

それが問題です。Kotlin は、データ クラスはクラスを拡張できないと述べています。だから私はデータクラスをあきらめ、通常のKotlinクラスをモデルとして使用するだけで、別の質問が来ます:

Kotlin クラスにはゲッターもセッターもありません。ご存知のように、Realm クラスはすべてのプロパティを private に設定し、ゲッターとセッターを記述する必要があります。

今、私は問題を解決する方法を考えています。

4

2 に答える 2

2

どのクラスのどの Kotlin プロパティにも、ゲッターとセッターがあります。したがって、コードは自分が提案したとおりに(data修飾子なしで)機能するはずだと思います。

https://kotlinlang.org/docs/reference/data-classes.html#data-classes https://kotlinlang.org/docs/reference/java-to-kotlin-interop.html#properties

PSプロパティに関するドキュメントがこの件に関して不明確であることに同意します

于 2015-12-19T11:32:03.703 に答える