zoukankan      html  css  js  c++  java
  • 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> 使用场合

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

  • 相关阅读:
    idea快捷的输出常用语句
    OneinStack基础搭建typecheo轻量级博客
    自动化框架介绍及使用
    jenkins配置自动化
    selenium模拟鼠标点击
    Linux下安装nginx
    解决“chrome正受到自动测试软件的控制”信息栏显示问题
    Git 常用操作
    ZendStudio自定义代码补全,自定义代码段
    07-python之装饰器
  • 原文地址:https://www.cnblogs.com/gfxxbk/p/5288983.html
Copyright © 2011-2022 走看看