1.Swift中的get & set 方法
定义一个Person类
class Person: NSObject {
//getter & setter 仅供演示,日常开发不用
var _name: String?
var name: String? {
get{
//返回成员变量
return _name;
}
set{
//使用 _成员变量 记录值
_name = newValue;
}
}
}
2.只读属性 readonly,计算型属性
class Person: NSObject {
var name: String?
//OC中定义属性的时候,readonly,重写getter方法
var title: String {
//之重写了getter方法,没有重写setter方法
//就是只读属性
get{
return "Mr." + (name ?? "");
}
}
//只读属性的简写,直接 return
//又称为计算型属性,本身不储存内容,都是通过计算获得结果
//类似于一个函数,没有参数,有返回值
var titleTwo: String {
return "xxxx" + (name ?? "");
}
}
3.计算型属性和懒加载的区别
计算型属性,本身不储存内容,都是通过计算获得结果,类似于一个函数,没有参数,有返回值。
懒加载会在第一次访问执行,闭包结束后,会把结果存在属性中,后续调用,直接返回属性的内容,懒加载的属性会分配空间存储值。