前言
Swift 的属性分为:
- 计算型属性
- 存储型属性
存储型属性就是一般意义上理解的可以进行赋值和取值的变量。
var title = “学科”
计算型属性,字面意思为计算型的属性,这种属性没法存储值
一、 计算型属性
特征:仅有get(readOnly语义)或有get+set的属性是计算型属性,有get+set的属性仅作为其他属性的外部接口
注意:
- 计算型属性本身不占用内存空间,所以不能赋值
- 计算型属性本身不占用内存空间,所以不可赋值
get + set 为计算型属性的原因:
真正赋值的过程是存在于 set 方法中并被底层包装掉的,如果我们手动实现了 set 方法,就无法进行正确赋值:
xcode不建议大家直接在get方法中return返回当前属性,因为他会把当前属性画横线。
- 计算属性有set时的get方法
- 计算属性有无set时的get方法