美文网首页
谈谈KVO和KVC理解

谈谈KVO和KVC理解

作者: kakao6 | 来源:发表于2019-12-24 14:51 被阅读0次

KVC:setValue - setKey方法- _key 全局变量- key属性赋值 - valueForUndefinedKey 和setValue:forUndefinedKey

KVO: MyPerson 类的age属性发生改变时,系统会生成一个类,NSKVONotifying_MYPerson ,在setAge方法里面,调用[super setAge:]

[self willChangeValueForKey:];[self didChangeValueForKey:];

这两个方法内部会主动调用监听者内部的 -(v o id)observeValueForkeyPath这个方法。

KVO优点:

1.简单方法实现两个对象间的同步,例如model 和View

2.能够对非我们创建的对象,内部状态对象的状态做出响应,而且不需要改变内部的实现

3.能够提供观察的属性的最新值和先前值

4.keyPaths 可以观察嵌套对象

5.完成了对观察值的抽象,因为不需要额外的代码允许观察值能够被观察

缺点:属性必须是strings来定义

2.对属性重构将导致,我们的代码不可用

3.如果要释放观察者时,要移除观察者。

相关文章

  • 谈谈KVO和KVC理解

    KVC:setValue - setKey方法- _key 全局变量- key属性赋值 - valueForUnd...

  • delegate和notification区别,分别在什么情况下

    KVC(Key-Value-Coding)KVO(Key-Value-Observing)理解KVC与KVO(键-...

  • KVC,KVO

    KVC , KVO KVC和KVO的区别及应用 KVC/KVO原理 1. KVC键值编码 KVC,即是指NSKey...

  • KVC、KVO

    KVC、KVO探识(一)KVO和KVO的详细使用 KVC、KVO探识(二)KVC你不知道的东西 KVC、KVO探识...

  • ios基础——KVO、KVC

    KVO和KVC常见问题: 1.KVC和KVO是什么.2.KVC和KVO的原理是什么3.KVC和KVO的使用场景4....

  • 可能碰到的iOS笔试面试题(7)--KVO-KVC

    KVC-KVO KVC的底层实现? KVO的底层实现? 什么是KVO和KVC? KVO的缺陷? KVO是一个对象能...

  • KVO和KVC理解

    一、KVO(Key-Value-Observing) 键值观察者模式,说白了就是当你监听的值发生变化时,会收到对应...

  • KVO 和 KVC 理解

    一,概述 KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就...

  • KVC 和 KVO

    iOS-KVC和KVO精炼讲解(干货)KVC 和 KVOiOS开发系列--Objective-C之KVC、KVO细...

  • 谈谈你对KVO和KVC的理解

    KVO KVO(Key-Value-Observing):翻译成键值观察。它是一种观察者模式的衍生。其基本思想是,...

网友评论

      本文标题:谈谈KVO和KVC理解

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