- 通过KVC修改属性会触发KVO么?
会触发KVO
通过KVC修改属性内部会调用willChangeValueForKey和didChangeValueForKey,所以会触发KVO。
- KVC的赋值和取值过程是怎样的?原理是什么?
setValue:forKey: 原理
valueForKey:原理
必须用在集合对象上或普通对象的集合属性上
简单集合运算符有@avg, @count , @max , @min ,@sum,
格式 @”@sum.age”或 @”集合属性.@max.age”
KVC和KVO的keyPath一定是属性么?
KVC 支持实例变量,KVO 只能手动支持手动设定实例变量的KVO实现监听