Swift属性
发布时间:2020-12-14 04:29:47 所属栏目:百科 来源:网络整理
导读:概述 Swift中跟实例相关的属性可以分为2大类 存储属性(Store Property) 类似成员变量的概念 存储在实例的内存中 结构体、类可以定义存储属性 枚举不可以定义存储属性 计算属性(Computed Property) 本质就是方法(函数) 不占用实例的内存 枚举、结构体、类可以
概述Swift中跟实例相关的属性可以分为2大类 存储属性(Store Property)
计算属性(Computed Property)
存储属性?关于存储属性,Swift有明确规定 在创建类 或 结构体的示例时,必须为所有的存储属性设置一个合适的初始值
计算属性set传入的新值默认叫做newValue,也可以自定义? 只读计算属性:只有get,没有set 定义计算属性只能用var,不能使用let?因为let代表常量:值是一成不变的 延迟存储属性使用lazy可以定义一个延迟存储属性,在第一次用到属性的时候才会进行初始化 lazy属性必须是var,不能是let?因为let必须在示例的初始化方法完成之前拥有值 如果多条线程同时第一次方位lazy属性 无法保证属性只被初始化一次 延迟存储属性注意点当结构体包含一个延迟属性时,只有var才能访问延迟存储属性 因为延迟存储属性初始化时需要改变结构体的内存 属性观察器(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |