與 oc 不同扣墩,Swift 的初始化方法需要保證類型的所有屬性都被初始化。
順序有講究
要當(dāng)前子類實(shí)例成員初始化完成后才能調(diào)用父類的初始化方法
class Cat{
var name:String
init() {
name="cat"
}
}
class Tiger:Cat{
let power:Int
override init(){
power=10
super.init()
name="tiger"
}
}
//一般來(lái)說(shuō)缭嫡,子類的初始化順序是:
/*
1,設(shè)置子類自己需要的初始化番薯,power = 10
2,調(diào)用父類相應(yīng)的初始化方法,super.init()
3,對(duì)父類中的需要該表的成員進(jìn)行設(shè)定,name = "tiger"
*/