swift学习笔记(六)析关闭过程和使用分配给属性的默认值
2015-10-12 11:13
155 查看
一。通过关闭和功能的默认实现财产值
当存储属性默认值需要定制,能为客户提供通过关闭或全局函数的自定义默认值。
注意:全局函数的结构,和枚举使用keywordstatic大喊 用classkeyword标注
当对一个属性使用闭包函数进行赋值时。每当此属性所述的类型被创建实例时,相应的闭包或函数会被调用,而他们的返回值会被作为属性的默认值。
ESC:
注意:在使用闭包给属性赋值时。实例的其它部分都还没有进行初始化,意味着不能在闭包里,訪问其它属性,就算这个属性有默认值也不行。同一时候也不能使用隐式的self,或者调用其它的实例方法
二、析构过程
swift会自己主动释放不再须要的实例,但对于某些自己创建的实例对象。就须要手动通过析构过程去释放对象。
析构过程仅适用于类类型。
每一个类做多仅仅能有一个析构函数,语法例如以下:
即使子类并没有提供它自己的析构函数,父类的析构函数会被调用
当存储属性默认值需要定制,能为客户提供通过关闭或全局函数的自定义默认值。
注意:全局函数的结构,和枚举使用keywordstatic大喊 用classkeyword标注
当对一个属性使用闭包函数进行赋值时。每当此属性所述的类型被创建实例时,相应的闭包或函数会被调用,而他们的返回值会被作为属性的默认值。
ESC:
Class SomeCLass{ let someProperty:SomeType={ //给someProperty赋一个默认值 //返回一个与SomeType类型同样的Value return someValue }()//以()结束作为闭包函数的标志 }//圆括号是为了告诉编译器要立马运行此闭包。 假设省略圆括号,则将整个函数赋给属性,而非返回值
注意:在使用闭包给属性赋值时。实例的其它部分都还没有进行初始化,意味着不能在闭包里,訪问其它属性,就算这个属性有默认值也不行。同一时候也不能使用隐式的self,或者调用其它的实例方法
二、析构过程
swift会自己主动释放不再须要的实例,但对于某些自己创建的实例对象。就须要手动通过析构过程去释放对象。
析构过程仅适用于类类型。
每一个类做多仅仅能有一个析构函数,语法例如以下:
deinit{ //析构过程 } 整个函数不含參数和()关于继承。子类会自己主动继承父类的析构函数。在子类的析构函数的最后,会自己主动调用父类的析构函数。并不须要手动调用super.deinit
即使子类并没有提供它自己的析构函数,父类的析构函数会被调用
相关文章推荐
- 74个Swift标准库函数
- Swift2.1 语法指南——方法
- 《从零开始学Swift》学习笔记(Day 21)——函数返回值
- 《从零开始学Swift》学习笔记(Day 21)——函数返回值
- [swift] NSClassFromString 无法获得该类
- Swift2.1 语法指南——属性
- swift中cell的两种创建区别和extension的使用。让我们开发更有条理
- Swift之贪婪的UIButton
- swift单例和oc单例
- swift中防止闭包循环引用
- 在swift中 @objc 、private 和事件问题
- swift中方便调试的日志输出
- coredata swift 简单入门
- 如果使用swift,先不用pod
- swift第一个HelloWord实现
- Swift学习之UI开发初探
- 16.Swift 播放视频
- 15.Swift 录制音频
- swift is only available on iOS 9.0 or newer 报错
- [ios][swift]swift中如果做基本类型的转换