iOS - KVC(Key-Value Coding)初识及实现机制

iOS - KVC(Key-Value Coding)初识及实现机制

    • 概念
    • 使用符合键值编码的对象
    • KVC提供的API方法
    • KVC 设值
    • KVC 取值
    • 代码事例
    • 关联文章
    • 参考

概念

键值编码是一种由NSKeyValueCoding非正式协议启用的机制,对象采用该机制来提供对其属性的间接访问。当对象符合键值编码时,其属性可通过字符串参数通过简洁、统一的消息传递接口进行寻址。这种间接访问机制补充了实例变量及其相关访问​​器方法提供的直接访问。

KVCObjective-C中的定义:KVC的定义都是对NSObject的,扩展来实现的(Objective-C中有个显式的NSKeyValueCoding类别名-分类)。

使用符合键值编码的对象

对象在从NSObject(直接或间接)继承时通常采用键值编码,它们都采用NSKeyValueCoding协议并为基本方法提供默认实现。这样的对象使其他对象能够通过紧凑的消息传递接口执行以下操作:

  • 访问对象属性。该协议指定了方法,例如通用gettervalueForKey:和通用 setter setValue:forKey:,用于通过名称或键访问对象属性,参数化为字符串。这些和相关方法的默认实现使用键来定位底层数据并与之交互,如访问对象属性中所述。

  • 操作集合属性。访问方法的默认实现与NSArray任何其他

你可能感兴趣的:(iOS,开发,ios)