我想實現一個NSMutableDictionary的子類,它返回nil而不是在字典中不存在鍵時拋出一個NSUndefinedKeyException。Subclassing NSMutableDictionary
然而,當我嘗試將對象添加到我的字典裏,我得到
[NSMutableDictionary setObject:forKey:]: method only defined for abstract class
NilDictionary.h
@interface NilDictionary : NSMutableDictionary {
}
@end
NilDctionary.m
@implementation NilDictionary
- (id)valueForUndefinedKey:(NSString *)key {
return nil;
}
@end
難道我真的要實現所有NSMutableDictionary中的方法再次在我的子類或有其他一些類我應該是subclas唱?
澄清:我原來的問題歸咎於我無法正確閱讀文檔。
如果您需要子類NSMutableDictionary檢查出正確的答案。如果你想要一個當你的密鑰不存在時返回nil的字典,NSMutableDictionary已經做到了。
你到底在幹什麼用字典來引發一個`NSUndefinedKeyException`?嘗試訪問字典中的無效鍵會自動返回`nil`;你怎麼得到這個錯誤? – 2011-01-25 04:21:21