字典转模型
- 定义模型属性的时候,如果是对象,通常都是可选的
- 模型属性在需要的时候创建,避免写构造函数,可以简化代码
- 如果想要使用KVC设置数值,属性不能是 private
- 使用KVC方法之前,应该调用 super.init 保证对象实例化完成
|
|
遍历构造函数
- 必须加
convenience
- 只有满足条件才能实例化对象,防止造成不必要的内存开销
- 简化对象的创建
- 本身不负责属性的创建和初始化工作
- 可以返回
nil
- 必须调用本类的
self.init
,而不能调用父类的super.init
- 不能被重写,只负责本类属性的判断和初始化
|
|
###在对象被销毁前自动调用 deinit123456789101112131415161718// 没有 func -> 不让调用// 没有() -> 不让重载// 在对象被销毁前自动调用// 类似于 OC 的 deallocdeinit { // 跟踪对象的销毁 // 必须释放的 /** 使用场景 通知:不释放不会崩溃,但是会泄露 KVO:不释放会崩溃 NSTimer:不销毁会循环引用 CADisplayLink */ }