美文网首页
KVC底层原理 Key-value-coding

KVC底层原理 Key-value-coding

作者: 流浪猫121 | 来源:发表于2019-03-20 11:01 被阅读0次

KVC Key-value-coding
里面主要是以下2个方法,下面分别对2个方法进行剖析。

-(id)valeueForKey:(NSString *)key

image.png

是否存在 get方法
如果存在 直接调用
首先会查找实例变量的get方法,如果查找到了,接直接调用赋值,否则,查找类似的实名变量,如果找到了就赋值,相似的概念,+(BOOL)accessInstanceVariablesDirectly 默认返回YES
如果对应的访问器不存在 判断实例变量是否存在valueForUndefinedKey,如果不存在NSUndefineKeyException

会查找同名的实例或相似的 根据同名变量是那个
_key
_isKey
key
isKey

-(void)setValue:(id)value forKey:(NSString *)key

image.png

和get方法相同,首先会查找实例变量的set方法,如果查找到了,接直接调用赋值,否则,查找类似的实名变量,如果找到了就赋值,相似的概念
_key
_isKey
key
isKey

相关文章

网友评论

      本文标题:KVC底层原理 Key-value-coding

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