swift KVC函数调用

// 1 定义模型属性的时候,如果是对象,通常都是可选的(- 在需要的时候创建 - 避免写构造函数,可以简化代码)
// 2 使用kvc方法之前,应该调用super.init保证对象实例化完成
class Person : NSObject {
// name属性是可选的,在oc中很多的属性都是在需要的时候创建的
// 例如:vc.view/tableviewcell.textLabel等
// 延迟加载,在需要的时候再创建
var name:String?
// 重载构造函数,使用字典为本本类设置初始值
init(dict:[String:AnyObject]) {
// 保证对象已经完全初始化完成
  super.init()
  // 使用self的方法,setvaluesforkeys **之前** 应该调用super.init 
  // kvc的方法是oc的方法, **在运行时给对象发送消息**
  // *** 要求对象已经实例化完成
setValuesForKeys(dict)
  }
}

你可能感兴趣的:(swift开发)