黑马程序员技术交流社区

标题: self和super用法对比 [打印本页]

作者: wuxiaoling    时间: 2015-11-19 12:05
标题: self和super用法对比

self

是什么?  是一个关键字
有什么用?  可以在类中调用方法或属性
怎么用?  调用方法:[self 方法名];  调用属性:self->属性名
什么时候用?  当需要在类的方法中调用方法或属性时
特点:
1.在方法中不能调用方法自己;死递归        
2.只能类方法调用类方法,对象方法中调用对象方法,不能混淆;
3.只能在对象方法中调用属性

self的用法
self 可以在类中用来表示调用者,去调用方法,或属性.
注意:当self调用属性时,只在对象方法中,因为类方法中不能用属性.self调用属性,只表示类的对象.
super
是什么?是一个关键字
有什么用?可以在子类中调用父类中被重写的方法
怎么用?调用方法:[super 方法名];

使用场合:
当子类重写父类的方法后,在某些情况下,又需要用到父类方法的功能.
注意:对象方法中只能调用父类的对象方法.类方法只能调用父类的类方法.
     如果子类没有重写父类的方法,没有必要用super.用self.
    所以只有在子类重写了父类方法的时候,我们调用父类方法,才要用super.
    属性不能用super.因为子类不能重写父类的属性.
super只适用于方法.


作者: 大雕会飞    时间: 2015-11-19 14:34
学习了,大神
作者: 李凯666    时间: 2015-11-19 16:37
嗯嗯,不错
作者: arhui    时间: 2015-11-19 18:08
学习了 (*^__^*) 嘻嘻……
作者: 453702877    时间: 2015-11-19 18:35
学习学习,看一看




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2