KVC的底层实现

1.它会调用这个与key相同名称的属性的set方法.
2.如果没有set方法,它会去判断有没有跟key值同名的成员属性.如果有,就直接赋值,如obj = obj.
3.如果没有,那么它还会去判断有没有跟key值名字相同带有下划线的成员属性,如果有,就直接赋值,如:_obj = obj.
4.如果都没有,就直接报错.找不到对应的成员属性.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 遍历字典里面所有的key 例如:key:name 就去模型中查找有没有setName:,直接调用这个对象setNa...
    Mr_董阅读 3,064评论 0 0
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,174评论 18 399
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 5,861评论 0 9
  • 第57天 最初注册这个账号是为了撒狗粮的,我以为我可以很牛逼的用文字记录下我们的点滴快乐,可以满身散发着恋爱的酸臭...
    豆浆小姐姐阅读 2,828评论 0 0
  • 我们生活在一个快速迭代的时代,当你辛辛苦苦完成10000小时定律的要求时,可能会悲催地发现社会已经不需要这项能力了...
    情感后花园阅读 2,622评论 1 3