我可以在Kotlin get()方法中访问属性值吗?
请考虑以下事项:
class MyTest {
var test: String = "string"
get() {
logIt("Property accessed")
return it
}
}
魔术变量it
不存在。我该如何获取实际房产价值?
答案 0 :(得分:5)
lambda中存在神奇的变量it
。用于访问属性值的魔法变量称为field
。有关详细信息,请参阅the documentation。
var test: String = "string"
get() {
logIt("Property accessed")
return field
}
答案 1 :(得分:4)
字段值位于名为field
的变量中:
var test: String = "string"
get() {
logIt("Property accessed")
return field
}
答案 2 :(得分:0)
class MyTest {
var test: String = "string"
get() {
logIt("Property accessed")
return field
}
}
如果您想在getter或setter中访问字段的值,可以使用保留字field
。