析構函數
一、導入
構造函數:從渠道有,誕生的過程
析構函數:從有到無,死亡時調用的函數
二焦蘑、析構函數定義
每個類最多只有一個析構器,而且析構器不帶任何參數和圓括號
deinit{
}
三盒发、析構函數運行的原理
什么時候調用析構例嘱? Swift會自動找到不再需要的實例進行釋放。
-如何判斷一個實例需要與否宁舰?
答:Swift通過自動引用計數(ARC)拼卵,只要有人用,我就不回收蛮艰;沒人使用我就調用析構函數收走內存
就是說計數為0的時候調用析構函數(不能手工調用)
class Person{
var name:String
var age:Int
init(name:String,age:Int){
print("構造函數被調用")
self.name = name
self.age = age
}
}
deinit{
print("調用析構函數")
}
var p1 = Person(name:"jing",age:18)