KVC

来源:互联网 发布:js动态删除指定tr 编辑:程序博客网 时间:2024/06/05 00:34
1  概述

KVC是KeyValue Coding的简称,它是一种可以直接通过字符串的名字(key)来访问类属性的机制。而不是通过调用Setter、Getter方法访问。

当使用KVO、Core Data、CocoaBindings、AppleScript(Mac支持)时,KVC是关键技术。

 


2  如何使用KVC

关键方法定义在:NSKeyValueCoding(Dick标注:注意你可以在代码里通过这个关键词跳转到源代码的头文件里看下就明白了,他是 NSMutableArray,dictionary等等类的扩展方法的扩展名。看了源代码后再结合下面的转载内容你就更容易明白了下面说的是什么)

KVC支持类对象和内建基本数据类型。

 


2.1         获取值

valueForKey:,传入NSString属性的名字。

valueForKeyPath:,传入NSString属性的路径,xx.xx形式。

valueForUndefinedKey它的默认实现是抛出异常,可以重写这个函数做错误处理。


2.2         修改值

setValue:forKey:

setValue:forKeyPath:

setValue:forUndefinedKey:

setNilValueForKey: 当对非类对象属性设置nil时,调用,默认抛出异常。


2.3         一对多关系成员的情况

mutableArrayValueForKey:有序一对多关系成员  NSArray


mutableSetValueForKey:无序一对多关系成员  NSSet
0 0
原创粉丝点击