您的位置:首页 > 移动开发 > Objective-C

Object C self and super 关键字

2012-08-28 17:34 567 查看
1.self 是从接收该者的开始查找方法.

2 super 则是从出现该super 关键字的类定义的父类开始查找方法.

Ie:

C继承 B ,B 继承 A .

三个类都定义了 printself 方法.

其中B 还定义了 testSupernadSelf 方法.

-(void)testSupernadSelf

{

  [self printself];

}

C * t1=[[C alloc]init];

[t1 testSupernadSelf]; //首先是从t1 开始查找printself 方法,由于我们定义了C 的printself,所以会调用C printfSelf.

如果B的testSupernadSelf是这样定义.

-(void)testSupernadSelf

{

  [super printself];

}

C * t2=[[C alloc]init];

[t2 testSupernadSelf]; //这时候就会从定义了super 关键字的类的父类开始查找. 那就是A,所以调用的是A printfSelf.而不是B printfSelf
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  object c
相关文章推荐