Kotlin数据类无法初始化父类的属性

Kotlin数据类无法初始化父类的属性,kotlin,constructor,extends,Kotlin,Constructor,Extends,像这样: open class Father( val name:String = "" ) data class Son( val age:Int = 1 ):Father() fun main(args: Array<String>) { val son = Son( name = "", age = 10 ) } 公开课父亲( val name:String=“” ) 数据类

像这样:

open class Father(
        val name:String = ""
)

data class Son(
        val age:Int = 1
):Father()

fun main(args: Array<String>) {
    val son = Son(
            name = "",
            age = 10
    )
}

公开课父亲(
val name:String=“”
)
数据类子(
val年龄:Int=1
):父亲()
趣味主线(args:Array){
瓦尔·森=森(
name=“”,
年龄=10
)
}
我无法初始化Son的“name”属性,因为它来自父类父。 我如何解决这个问题?

应该是这样的

open class Father(open val name: String="")

data class Son(val age: Int = 1,
override val name: String    ) : Father(name)

fun main(args: Array<String>) {
val son = Son(name = "",age = 10)
}
open类父(open val name:String=”“)
数据类Son(val年龄:Int=1,
覆盖val名称:字符串):父(名称)
趣味主线(args:Array){
val-son=son(name=”“,年龄=10岁)
}

但是像“Son”这样的类太多了,这样会产生太多重复的代码……为什么需要在
Son
中重写
name
?它应该(更简单地)在不使用
覆盖val
的情况下工作,只需将参数传递给超类构造函数。