便利构造函数

Swift构造函数

谁说胖子不能爱 提交于 2020-03-02 05:30:33
1. 构造函数: 给属性开辟内存空间 给属性设置初始值 最终目标创建一个对象 用 init 构造函数 参数有可能不同 ( 1 ) // 定义属性使用 var 是我们开发需要的 var name : String // 可选属性 - 默认等于 nil 可以不需要在构造函数里进行初始化 title 属性没有分配内存空间 在其他地方设置值的时候才需要分配内存空间 var title : String ? //‘override’ 重写关键字 子类继承父类 需要对父类里面的方法进行扩展 就叫重写 // 调用 super init ()之前 保证子类初始化完成 // 在 swift 中 在当前工程 类都是全局共享的 不用导头文件 ( 2 )重载构造函数 函数名相同 参数名或者参数个数不同 就是重载 不仅限于构造函数 包括其他函数 // 属性名字和传入的参数一样 需要使用 self 区分 ( 3 )重写 // 如果当前类中提供了构造函数 则默认的构造函数没有了 因为默认的构造函数 init 无法给子类的属性进行初始化 2.KVC 本质: 在运行时动态向对象发送 setValue : forKey : ( 1 )可选类型的属性可以不在构造函数中初始化 ( 2 ) KVC 是 OC 特有的 age 在 swift 不兼容 基本数据类型不能使用可选类型 要进行初始化 ( 3