isKindOfClass和isMemberOfClass的用法,见代码注释
类LittleCat继承自Cat
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
Cat * cat1 = [[Cat alloc] init];
LittleCat * lcat1 = [[LittleCat alloc] init];
//判断是否是当前类的实例对象,或者是否是当前类的子类的实例对象
BOOL isornot1 = [cat1 isKindOfClass:[Cat class]];
//判断是否是当前类的实例对象
BOOL isornot2 = [cat1 isMemberOfClass:[Cat class]];
BOOL isornot3 = [lcat1 isKindOfClass:[Cat class]];
BOOL isornot4 = [lcat1 isMemberOfClass:[Cat class]];
NSLog(@"%i", isornot1);
NSLog(@"%i", isornot2);
NSLog(@"%i", isornot3);
NSLog(@"%i", isornot4);
}输出:
2015-11-04 14:40:40.422 02-runtime[3369:86418] 1
2015-11-04 14:40:40.423 02-runtime[3369:86418] 1
2015-11-04 14:40:40.423 02-runtime[3369:86418] 1
2015-11-04 14:40:40.423 02-runtime[3369:86418] 0由第三行输出可知,isKindOfClass可以判断是否是当前类子类的实例对象,由第四行输出可知,isMemberOfClass不能判断
本文深入探讨了Swift与Objective-C在iOS开发领域的应用与区别,包括语法特性、性能优化、社区生态及未来发展趋势。通过对比分析,帮助开发者选择更适合的编程语言进行高效开发。

1万+

被折叠的 条评论
为什么被折叠?



