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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yaozeyang_2014 中级黑马   /  2014-3-21 17:14  /  825 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 yaozeyang_2014 于 2014-3-24 14:08 编辑

如果有3个类A,B,C,B继承了A,而C继承了B,看代码吧,为了方便,省略格式,关键字也省了
  1. A : NSObject
  2. {
  3. - (void)test{}
  4. }
  5. B : A
  6. {
  7. - (void)test{}
  8. }
  9. C : B
  10. {
  11. - (void)test
  12. {
  13.        [super test];
  14. }
  15. }
  16. void main()
  17. {
  18.        C* p = [C new]
  19.        [p test];
  20. }
复制代码



这个super是指向哪个父类的呢?是最原始的还是就近原则

2 个回复

倒序浏览
使用 super 时,从父类的方法列表中开始找。然后调用父类的这个方法(从super出现的在的方法所在的类的父类开始查找。)
回复 使用道具 举报 1 0
super指向C的父类 也就是B
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马