- class:获取当前方法调用者的类
- superClass 获取当前方法调用者的父类
- super:仅仅是一个编译指示器,就是给编译器看的,不是一个指针
- super本质:只要编译器看到super这个标志,就会让当前对象去调用父类方法,本质还是当前对象在调用
@interface Person : NSObject
-(void)logClass;
@end
@implementation Person
-(void)logClass{
/*
class:获取当前方法调用者的类
superClass 获取当前方法调用者的父类
super:仅仅是一个编译指示器,就是给编译器看的,不是一个指针
super本质:只要编译器看到super这个标志,就会让当前对象去调用父类方法,本质还是当前对象在调用
*/
NSLog(@"%@ --> %@ --> %@ --> %@" , [self class] , [self superclass] , [super class] , [super superclass]);
}
@end
@interface SubPerson : Person
@end
@implementation SubPerson
@end
- (void)viewDidLoad {
[super viewDidLoad];
Person *p = [Person new];
[p logClass];//结果:Person --> NSObject --> Person --> NSObject
SubPerson *sp = [SubPerson new];
[sp logClass];//结果:SubPerson --> Person --> SubPerson --> Person
}
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。