初始化方法顺序
2017-02-04 本文已影响13人
fordring2008
与 oc 不同,Swift 的初始化方法需要保证类型的所有属性都被初始化。
顺序有讲究
要当前子类实例成员初始化完成后才能调用父类的初始化方法
class Cat{
var name:String
init() {
name="cat"
}
}
class Tiger:Cat{
let power:Int
override init(){
power=10
super.init()
name="tiger"
}
}
//一般来说,子类的初始化顺序是:
/*
1,设置子类自己需要的初始化番薯,power = 10
2,调用父类相应的初始化方法,super.init()
3,对父类中的需要该表的成员进行设定,name = "tiger"
*/