isKindOfClass和isMemberOfClass之间的区别是:


1.isKindOfClass是判断对象是否是一个类的实例,或者是该类祖先类的实例;
2.isMemberOfClass只能用来判断前者,不能用来判断后者

@interface SuperClass : NSObject
@end
@interface ChildClass : SuperClass
@end
SuperClass *superOb = [[SuperClass alloc]init];
ChildClass * childOb = [[ChildClass alloc]init];

[superOb isKindOfClass:[SuperClass Class]]; // YES
[superOb isKindOfClass:[ChildClass Class]]; // NO

[childOb isKindOfClass:[SuperClass Class]]; // YES
[childOb isKindOfClass:[ChildClass Class]]; // YES

[superOb isMemberOfClass:[SuperClass Class]]; // YES
[superOb isMemberOfClass:[ChildClass Class]]; // NO

[childOb isMemberOfClass:[SuperClass Class]]; // NO
[childOb isMemberOfClass:[ChildClass Class]]; // YES
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 【训练片段1】 姓名:潘淳森 导师:孙薇淇 【I理解部分】: 本拆通过案例分析,形象地介绍了结构化思考的方式~~借...
    静心第一阅读 249评论 0 0
  • 前言 这是我的第一篇简书,以后要养成记笔记的习惯! 正文 CMake 是一个开源的跨平台的构建测试和打包工具,可以...
    rickif阅读 1,056评论 0 0
  • #幸福是需要修出来的~每天进步1%~幸福实修09班~08-黄瑛 201708/1802/30)09班 【幸福三朵玫...
    涵蛋蛋阅读 185评论 1 0
  • 临《多宝塔碑》 大唐西京千福寺多宝佛塔感应碑文南阳岑勋撰朝议郎判尚书武部员外郎琅邪颜真卿书朝散大夫检校尚书都官郎中...
    刘伟书法_沈阳阅读 259评论 0 2