class Person {
var name: String
init(name: String) {
self.name = name
}
}
class Boy: Person {
var gf: String! {
didSet {
print("have a girlfriend: \(gf)")
}
}
override init(name: String) {
super.init(name: name)
gf = "Lilian"
}
}
我认为属性“gf”在调用“super.init”之前已经初始化,值为nil。所以在“super.init”下面,重置“gf”应该调用它的“didSet”。但事实并非如此。我想知道原因。