KVC:
简单的键值对操作,
设值:
setValue:属性值 forKey:属性名(用于简单路径)
setValue:属性值 forKeyPath:属性路径(用于复合路径)
读取:
valueForKey:属性名 、valueForKeyPath:属性名(用于复合路径)
KVO:
根据指定Key增加监听器,
注册指定Key路径的监听器: addObserver: forKeyPath: options: context:
删除指定Key路径的监听器: removeObserver: forKeyPath、removeObserver: forKeyPath: context:
回调监听: observeValueForKeyPath: ofObject: change: context: