29 Swift如何进行类的初始化和反初始化

2023-03-19  本文已影响0人  为了自由的白菜

如何进行类的初始化和反初始化

初始化器

image-20230228225056832.png

默认的属性值

image-20230228225248973.png

默认的初始化器

image-20230301210426255.png

自定义初始化

image-20230301211610721.png

在初始化中分配常量属性

image-20230301211807823.png

结构体的成员初始化器

image-20230301212013558.png

值类型的初始化器委托

image-20230301212208735.png

类的继承和初始化

指定初始化器和便捷初始化器

image-20230301213927678.png

类的初始化委托

image-20230301214114756.png

两段式初始化

安全检查

image-20230301215322799.png image-20230301215519500.png image-20230301215619143.png image-20230301215714270.png

两段式初始化过程-阶段1

image-20230301220330424.png

两段式初始化过程-阶段2

image-20230301220558237.png

初始化器的继承和重写

初始化器的自动继承

可失败初始化器

class Person {
    var name: String
    var age: Int
    
    init?(name: String, age: Int){
        if age > 200 {
            retuen nil
        }
        
        self.name = name
        self.age = age
    }
}

let person = Person(name: "zhangsan", age: 300)
print(person)
//nil

必要初始化器

反初始化


image-20230301222352435.png
上一篇 下一篇

猜你喜欢

热点阅读