atsushi-koshikizawa
11/12/2019, 6:13 AMdata class Hoge(val foo: String, val bar: String)
data class Fuga(foo: String, bar: String, val buz: String) : Hoge(foo, bar) // compile error
Data class in Kotlin cannot be opened, and its primary constructor must have only property parameters.
I have two questions.
1. Why cannot data classes be opened?
2. How can I reuse Hoge
class to define Fuga
class?Matthieu Esnault
11/12/2019, 6:20 AMatsushi-koshikizawa
11/12/2019, 6:32 AMinterface FooBar {
val foo: String
val bar: String
}
interface Buz {
val buz: String
}
data class Hoge(override val foo: String, override val bar: String) : FooBar
data class Fuga(override val foo: String, override val bar: String, override val buz: String) : FooBar, Buz