【发布时间】:2020-08-27 07:46:57
【问题描述】:
我在kotlin docs找到了这段代码:
var stringRepresentation: String
get() = this.toString()
set(value) {
setDataFromString(value) // parses the string and assigns values to other properties
}
我不明白 this.toString() 在这里做什么。 this 指的是整个对象。为什么我们希望每次访问对象时都将其转换为字符串?它实际上应该是field.toString() 吗? (但这也是多余的)
【问题讨论】:
-
Kotlin 文档在哪里?
-
可能是因为 set 没有为字段设置值,所以该字段为空。它应该用于对象的 toString() 调用,因为
foo.stringRepresentation看起来更像我们想要 foo 对象的字符串表示形式。 -
@mattfreake 我已经用链接更新了问题。有问题的代码位于“Getters and Setters”部分下。
-
谢谢,链接中的文档与 Tenfour04 下面所说的相符
标签: kotlin tostring getter-setter getter