Hai Nan

但行好事,莫问前程.

记录知识点


kvo kvc

1, setObject:forkey:中value是不能够为nil的,不然会报错。

setValue:forKey:中value能够为nil,但是当value为nil的时候,会自动调用removeObject:forKey方法

2, setValue:forKey:中key的参数只能够是NSString类型,而setObject:forKey:的可以是任何类型

3,setObject:forKey:方法NSMutabledictionary特有的,而

setValue:forKey:方法是KVC(键-值编码)的主要方法。

参考

iOS KVC和KVO详解

iOS底层原理总结 - 探寻KVO本质

setValue和setObject的区别

最近的文章

nsnumber nsvalue nsdata

NSNumber主要是用来封装ANSI C内置的数据,比如char,float,int等等。NSValue主要用来封装自定义的数据结构,可以是系统框架提供的CGRect/CGPoint/CGSize等数据结构,也可以是自己定义的struct。参考【Objective-C基础】NSNumber,NSValue和NSData…

继续阅读
更早的文章

instancetype id

instancetype的作用,就是使那些非关联返回类型的方法返回所在类的类型!参考Objective-C中的instancetype和id关键字…

继续阅读