美文网首页iOS学习
super 、superClass和class

super 、superClass和class

作者: 快乐的tomato | 来源:发表于2017-09-11 11:26 被阅读21次
  • class:获取方法调用类名
  • superclass:获取方法调用者的父类类名
  • super:编译修饰符,不是指针,指向父类标志,
    本质还是拿到当前对象去调用父类的方法
    注意:super并不是拿到父类对象去调用父类方法

person.h

- (void)classtest;

person.m

- (void)classtest
{    
 NSLog(@"person中的输出: %@ %@ %@",[self class],[self superclass],[super class]);
}

SonPerson继承自Person
SonPerson.h

- (void)test;

Sonperson.m

NSLog(@"SonPerson中的输出 :%@ %@ %@",[self class],[self superclass],[super class]);
[super classtest];

ViewController.m

SonPerson *son = [[SonPerson alloc] init];
 [son test];
    
Person *person = [[Person alloc] init];
[person classtest];

打印输出的结果:

2017-09-11 11:34:03.195 01-super,superClass,class[13583:98927] SonPerson中的输出 :SonPerson Person SonPerson
2017-09-11 11:34:03.195 01-super,superClass,class[13583:98927] person中的输出: SonPerson Person SonPerson
2017-09-11 11:34:03.195 01-super,superClass,class[13583:98927] person中的输出: Person NSObject Person

相关文章

网友评论

    本文标题:super 、superClass和class

    本文链接:https://www.haomeiwen.com/subject/chzzjxtx.html