OK、Kotlinが公式に外出していて、もう一度試してみると、sealed
とdata
のメリットのどちらかを選択する必要がありますが、どうにかして両方を持つことはできません。Kotlin:密封されたクラスはデータクラスを「含む」ことはできませんか?どうして?
これは、例えば、私には意味をなさないように見えるが、コンパイルはしません:
sealed class Expr {
data class Const(val number: Double) : Expr()
data class Sum(val expr1 : Expr, val expr2 : Expr) : Expr()
}
データクラスが他のクラスを拡張することはできませんので。
紛失しているものがありますか?
Kotlin 1.1以降、これでhttps://kotlinlang.org/docs/reference/whatsnew11.html?q=da&p=0#sealed-and-data-classesが可能になりました。 – Stim