KVC
查找规则:
先查找和直接写入的字符串相同的成员变量,如果找不到就找以下划线开头的成员变量。
常见用处:
- 对私有变量进行赋值;
- 字典转模型。
注意点:
- 字典转模型的时候,字典中的某一个key一定要在模型中有对应的属性。
- 如果一个模型中包含了另外的模型对象,是不能直接转化成功的。
- 通过kvc转化模型中的模型,也是不能直接转化成功的。
KVO
底层原理
当一个类的属性被观察的时候,系统会通过runtime动态的创建一个该类的派生类,并且会在这个类中重写基类被观察的属性的setter方法,而且系统将这个类的isa指针指向了派生类,从而实现了给监听的属性赋值时调用的是派生类的setter方法。重写的setter方法会在调用原setter方法前后,通知观察对象值得改变。
网友评论