Swift - 类初始化和反初始化方法(init与deinit)

注:代码已升级至Swift4

init():类的初始化方法(构造方法)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/********************************
使用默认构造函数
********************************/
class Student {
//类属性
var name:String = ""
var number:Int = 0
}
var student = Student()

/********************************
自定义构造函数
********************************/
class Person {
//类属性
var name:String
var age:Int

//类构造函数
init(newName:String, newAge:Int) {
self.name = newName
self.age = newAge
}

//成员函数(实例方法)
func say() -> String{
return "我叫\(name)"
}
}
var p = Person(newName: "Joe.Ye", newAge: 32)
print(p.say())

deinit():类反初始化方法(析构方法)

1
2
3
4
5
6
7
8
9
10
11
class DBClass {
var conn:Connection? = Connection()
deinit{
//可以做一些清理工作
self.conn!.close()
self.conn = nil
}
}

var db:DBClass? = DBClass()
db = nil //设置nil后即可执行deinit()方法

Powered by AppBlog.CN     浙ICP备14037229号

Copyright © 2012 - 2020 APP开发技术博客 All Rights Reserved.

访客数 : | 访问量 :