黑马程序员技术交流社区

标题: 关于封装中的self和继承中的super [打印本页]

作者: 逆流瞅瞅    时间: 2015-5-7 18:05
标题: 关于封装中的self和继承中的super
MJ 讲self
   指向了当前对象(方法调用者)  谁调用了当前方法,self就代表谁
  * self出现在对象方法中,self就代表对象
  * self出现在类方法中,self就代表类
[self test]如果当前类(对象)中没有该test方法,则会继续往父类上面找,直至找到。

而super的作用
1. 直接调用父类的某个方法
  2. super处在对象方法中,那么就会调用父类的对象方法
     super处在类方法中,那么就会调用父类的类方法
  3. 使用场合: 子类重写父类的方法时想保留父类的一些

同样,如果父类中没有该方法,也会往上面找。

那么问题来了:
当类(对象)本身没有该方法时而父类有的情况下,self和super是不是就是等价的呢?


作者: cogddo    时间: 2015-5-8 15:09
子类没有那就是说明,方法是继承的,那就只能用super访问。
作者: 凌乱    时间: 2015-5-8 15:28
这是啥语法
作者: 好梦留人    时间: 2015-5-8 16:31
self还会先去自身找再去父类找,super直接去父类,应该和性能有关吧
作者: Harvey_ios    时间: 2015-5-8 19:36
老兄,你的技术分都是怎么赚到的啊,怎么快速赚技术分呢
作者: 大家叫我小祥子    时间: 2015-5-9 00:00
为何你还在水




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