- 初始器、属性的访问器这个两个说的都是getter 和 setter 方法,翻译的问题。到底应该叫什么,我也不知道,反正知道意思就可以了
- 幕后字段、后备字段这个两个说的field 这里有个坑,下面会介绍到
open class Person { var name: String = "adsf" get() { return field } set(value) {
this.name = value//这是错的 正确的应该是 field = value }
}
对于 **field 标识符只能用在属性的访问器内。** 的理解:当我们访问 object.name = value的时候
实际是调用了该对象的set方法。field只能在get()set()方法中使用,get(),set()方法中只能用field标示符。