在类继承体系中查询类型信息:
isMemberOfClass:能够判断出对象是否为某个特定类的实例;(不过对NSMutableDictionary、NSString等并不适用);
打印可以看出NSMutableDictionary的真身是__NSDictionaryM ;所以我们想要判断一个对象是否是NSMutableDictionary不能使用isMemberOfClass;不过自定义的类是可以使用isMemberOfClass来判断的。
NSMutableDictionary *dict = [NSMutableDictionary new];
NSLog(@"%d",[dict isMemberOfClass:[NSDictionary class]]); //0
BOOL ismember = [dict isMemberOfClass:[NSMutableDictionary class]]; //0
NSLog(@"--%d",ismember);
NSLog(@"%d",[dict isKindOfClass:[NSDictionary class]]); //1
NSLog(@"%d",[dict isKindOfClass:[NSMutableDictionary class]]); //1
NSLog(@"%d",[dict isKindOfClass:[NSArray class]]); // 0
Person *person = [Person new];
NSLog(@"%d",[person isKindOfClass:[Person class]]); //1
BOOL ismember1 = [person isMemberOfClass:[Person class]]; //1
NSLog(@"--%d",ismember1);
isKindOfClass:能够判断出对象是否为某类或者是其派生类的实例