A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 泥娃娃 中级黑马   /  2016-3-22 19:42  /  525 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

self的基本用法
self 可以在类中用来表示调用者,去调用方法.或属性.

注意: 当self调用属性时,只在对象方法中.因为类方法中不能用属性.
self调用属性,只表示类的对象.

self的规则
1,实例方法里面的self,是对象的首地址。
2,类方法里面的self,是Class.
尽管在同一个类里面的使用self,但是self却有着不同的解读。在类方法里面的self,可以翻译成class self;在实例方法里面的self,应该被翻译成为object self。在类方法里面的self和实例方法里面的self有着本质上的不同,尽管他们的名字都叫self。


uper的基本用法
super是一个关键字.
可以在子类中调用父类中被重写的方法.
调用方法:[super 方法名];
比如我们常见的构造方法中:

-(id)initWithName:(NSString*) name{
  if(self=[super init]){
    self.name=name;
  }
    return self;
}

以上[super init]就是调用了父类NSObject中的方法init; 因为init在子类中被重写了,所以想要调用父类中的init方法,必须用super.
super的特点
1.只能类方法调用类方法,对象方法中调用对象方法;
2.不建议用super调用父类中没有被重写的方法,可以直接用self调用,不能调用属性,只能调用方法.

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马