美文网首页
KVC使用分析

KVC使用分析

作者: ios小喽喽 | 来源:发表于2022-08-29 12:02 被阅读0次

KVC即Key-Value Coding,来自于 Foundation框架: 意思键-值编码,键值编码机制是一种由NSKeyValueCoding非正式协议启用的机制,通过这个协议可以间接访问OC对象的属性。当一个对象符合键值编码时,它的属性可以利用字符串参数来寻址,通过一个简洁、统一的消息传递接口。这种间接访问机制补充了实例变量及其关联的访问方法所提供的直接访问

一:KVC 取值

1、通过setValue:forkey: 来改变值:

图(1)

2、改变数组的值:

图(2)

3、通过[NSValue valueWithBytes:&sv objCType:@encode(CarShopingValue)]

图(3)

4、通过keyPath

图(4)

5、数组取值:

图(5)

6、字典取值:

图(6)

7、 KVC消息传递

图(7)

8、 聚合操作符  @avg、@count、@max、@min、@sum

图(8)

9、数组操作符 @distinctUnionOfObjects(去重) @unionOfObjects

图(9)

二:取值原理

1、accessInstanceVariablesDirectly必须设置为YES才能进行赋值

图(1)

2、取值流程:先走set方法->然后再走_<key> -> _is<key> -><key> ->iskey

图(2) 图(3)

从上面中可以看出我的set方法打开会走set方法

3、我关闭set方法:

图(4) 图(5)

当我关闭set方法的时候会走到_name,后续就不打印了

相关文章

  • KVC使用分析

    KVC即Key-Value Coding,来自于 Foundation框架:意思键-值编码,键值编码机制是一种由N...

  • KVC详解

    KVC 目录结构KVC定义KVC取值和设置KVC使用keyPathKVC处理字典KVC作用 参考:iOS KVC和...

  • iOS原理篇(二): KVC实现原理

    KVC实现原理 什么是 KVC KVC基本使用 KVC 原理 总结 一 、 什么是KVC KVC的全称是Key-V...

  • 数据存储

    1.1.3.使用通知传值 1.2.Segue使用 2. KVC&&KVO2.1.什么是KVC KVC - Key ...

  • OC语法:KVC的底层实现

    一、KVC是什么二、怎么使用KVC三、KVC的底层实现四、KVC常见面试题 一、KVC是什么 KVC全称Key-V...

  • KVC

    方法交换 KVC的使用 KVC的原理 KVC自定义 参考资料 DIS_KVC_KVO[https://github...

  • KVC,KVO

    主要分成一下几个部分1.KVC1.1 KVC简介1.2 KVC使用2.KVO2.1 KVO简介2.2 KVO使用 ...

  • KVO和KVC的使用及原理解析

    一 KVO基本使用 二 KVO本质原理讲解及代码验证 三 KVC基本使用 四 KVC设值原理 五 KVC取值原理 ...

  • KVC的简单使用

    KVC字典转模型 KVC 中经常使用的就是字典转模型 KVC的大招 KVC设置对象属性及取值 KVC间接设置对象属...

  • iOS-ARC模式下获取引用计数

    使用KVC 使用CFGetRetainCount 使用私有API

网友评论

      本文标题:KVC使用分析

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