好的,既然 Kotlin 正式出局,我又开始使用它,我很困惑,我需要在两者的优点之间做出选择sealed
,data
但不知何故不能两者兼得。
例如,这对我来说似乎很有意义,但无法编译:
sealed class Expr {
data class Const(val number: Double) : Expr()
data class Sum(val expr1 : Expr, val expr2 : Expr) : Expr()
}
因为数据类不能扩展其他类。
有什么我想念的吗?