扩展变量属性定义格式 : 扩展的变量属性 , 使用 var 修饰属性 , 必须定义 get / set 属性访问器方法 ;
var 接收者类型.扩展属性名称 : 扩展属性类型
get(){}
set...扩展常量属性定义格式 : 扩展的变量属性 , 使用 val 修饰 , 必须定义 get 方法 , 必须不能定义 set 方法 ;
val 接收者类型.扩展属性名称 : 扩展属性类型
get(){}...属性访问器定义 : 变量必须定义 getter 和 setter 属性访问器 , 常量扩展属性只能且必须定义 getter 方法 ;
open class Student {
var name.... olderAge 扩展属性的本质 :
① 没有为 olderAge 属性分配内存 : 在内存中是没有准备任何字段来存储这个值的 , 因此实际上在内存中是没有为该值分配内存空间 ;
② 属性访问器可访问内容...: 只能通过调用 Student 接收者类型对象中的成员属性 , 成员方法 , 或定义局部变量 ;
③ 扩展属性本质 : 使用上述可访问内容 , 经过计算模拟生成一个属性 , 这里模拟的属性就是比 Student