如何在 Kotlin 中为 data class 的字段重写 getter?
大家好!我正在学习 Kotlin,在使用 data class 时遇到了一个问题。
我有一个简单的 data class 用于存储用户信息:
```kotlin
data class User(
val firstName: String,
val lastName: String,
val age: Int
)
```
我想添加一个计算字段 `fullName`,它返回 `"$firstName $lastName"`。我以为可以简单地重写字段的 getter,但当我尝试类似下面的代码时,编译器报错:
```kotlin
data class User(
val firstName: String,
val lastName: String,
val age: Int
) {
val fullName: String
get() = "$firstName $lastName"
}
```
这段代码可以工作,但我希望 `fullName` 是 data class 构造函数的一部分,同时具有自定义 getter。例如,我想在构造函数中传递 `firstName` 和 `lastName`,而 `fullName` 自动计算。
我尝试了不同的方法,但都遇到编译错误。如何正确地为字段重写 getter?