美文网首页
kvc流程分析

kvc流程分析

作者: UILabelkell | 来源:发表于2020-04-09 22:13 被阅读0次

    KVC:全称为keyValueCoding,简称键值编码。是对NSObjcet的扩展,分类名为 : NSKeyValueCoding 我们经常用KVC或者setter方法来触发KVO,实现键值变化监听,实现一些功能。

    赋值实现原理

     1、查找是否实现setter方法,如果有,优先调用setter方法完成赋值(注意:set后面的键的第一字字母必须是大写)
    
     2、当没找到setter方法,调用accessInstanceVariablesDirectly询问。
      3、  如果返回YES,顺序匹配变量名与 _<key>匹配到则设定其值
      4、  如果返回NO,结束查找。并调用  setValue:forUndefinedKey:报异常
    
     5、如果既没有setter也没有实例变量时,调用 setValue:forUndefinedKey:        
    

    相关文章

      网友评论

          本文标题:kvc流程分析

          本文链接:https://www.haomeiwen.com/subject/zqqkmhtx.html