iOS之06-三大特性之继承

 

继承

 1、定义

  继承是指一个对象直接使用另一对象的属性方法

  继承:xx xxx

 2、实现

1 A {
2     int _age;
3     int _no;
4  }
5  B : A {// 继承的实现
6     int _weight;
7  }

  : A 表示 B 继承了 A ,相当于拥有了 A 里面的所有成员变量方法

  OC是一种单继承的语言

 3、继承的好处

  1> 抽取重复代码

  2> 建立了类之间的关系

  3> 子类可以拥有父类中的所有成员变量方法

 4、注意点

  1> 基本上所有类的根类是NSOBject

  2> 父类必须声明在子类上面(因为编译从上到下)  

  3> 不允许子类父类相同名称的成员变量

  4> 调用某个方法时,优先区当前中找,如果找不到,去父类中找

  5> 每个类中有一个superclass的指针,会指向它的父类

 5、坏处

  耦合性太强(类彼此间关系太强,若一个不能用或没有,就会影响其他的类)

 6、继承的使用场合

  1> 当两个类拥有相同属性方法的时候,就可以将相同的东西抽取到一个父类

  2> 当A类完全拥有B类中的部分属性和方法时,可以考虑让B类继承A类

 7、组合:xxx1 拥有 xxx2

  实现方式:在xxx2中的成员变量中定义 xxx1 *_变量名

1 A {
2     int _age;
3     int _no;
4  }
5  B {
6     A *_a; // 组合的实现
7     int _weight;
8  }

 8、关键字 super

  [super 父类方法] 调用父类的方法

  1> 作用

    直接调用父类中的某个方法

    super处在对象方法中,那么就会调用父类对象方法

    super处在类方法中,那么就会调用父类类方法

  2> 使用场合

    子类重写父类的方法时想保留父类的一些行为

posted @ 2016-03-17 19:46  墨隐于非  阅读(732)  评论(0编辑  收藏  举报