安全的 keypath

KVO 和 KVC 是 Objective-C 语言非常强大的两个特性,从一开始的似懂非懂到慢慢了解它的底层实现,才感受到这门动态语言的魅力所在。 KVC 允许通过一个点分隔的字符串来设置一个对象的属性值,而 KVO 可以通过点分隔的字符串来监听对象属性值的改变。 @interface Foo : NSObject @property (nonatomic) NSString *name; @property (nonatomic) NSInteger age; @end @interface »