首页 > 代码库 > 十三、初始化 Initialization
十三、初始化 Initialization
1. 概述
通过定义构造器 initializers 创建类、结构体和枚举的一个实例。与Objective-C的 initializers 不同的是,Swift中的 initializers 没有返回值。
类类型 class types 的实例也可以实现析构器 deinitializer,在类被释放之前,进行清理工作。
2. stored properties的初始化(Setting Initial Values for Stored Properties)
类和结构体的 stored properties 在他们的实例被创建的时候,就必须有合适的值。
你可以在构造器中初始化他们,也可以在定义的时候给他们设置默认值。
注意:当给 stored property 初始化的时候,不论是使用默认值初始化,还是调用构造器初始化,都不会调用属性监视器。
2.1 构造器 Initializers
构造器是使用 init
关键字定义的没有参数的方法,用来创建某种类型的实例:
init() { // perform some initialization here }
如:
struct Fahrenheit { //华氏温度 var temperature: Double init() { temperature = 32.0 } } var f = Fahrenheit() println("The default temperature is \(f.temperature)° Fahrenheit") // prints "The default temperature is 32.0° Fahrenheit"
2.2 默认参数值 Default Property Values
当某个参数总是有某个相同的初始化值时,使用默认参数值比在构造器中初始化它要好。当然他们的结果是一样
struct Fahrenheit { var temperature = 32.0 }
3. 自定义初始化方法 Customizing Initialization
下面的例子定义了结构体Celsius
的两个初始化器,用于初始化不同范围的温度:
十三、初始化 Initialization
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。