zoukankan      html  css  js  c++  java
  • 多态 oc

      1. 对象具备多种形态就是多态;
      2. 没有继承就没有多态;
      3. 父类指针指向子类对象;Animal *a = [Dog new]; [a eat];
      4. 调用方法是会检测对象的真是形象;
      5. NSObject *n = [Dog new];
      6. NSObject *n = [Animal  new];
      7. OC是弱语法;runtime动态属性;只会出现警告,不会报错;
      8.  
      9. 多态的好处:
      10. 喂狗;喂猫;可以用喂动物来代替;因为猫和狗有共同父类;
      11. 如果参数中使用的是父类类型,可以传入父类,子类对象;
      12.  
      13. 多态的限制:
      14. 父类类型的变量不能用来调用子类的方法;Animal *aa = [Dog new];
      15. aa指向的是Animal类型;我们使用强制类型转换为Dog类型:
      16. Dog *dd = (Dog *)aa;
      17. 多态
      18. 没有继承就没有多态
      19. 代码的体现:父类类型的指针指向之类对象;
      20. 好处:如果函数、方法参数中使用的是父类类型,可以传入父类、子类对象;
      21. 局限性:父类类型的变量不能直接调用子类特有的方法;必须强转为子类类型变量后,才能直接调用子类类型方法;
  • 相关阅读:
    Grid自动添加行
    C#中Trim()、TrimStart()、TrimEnd()的用法
    input事件
    JS判断元素文本值是否为空
    JS转换Date日期格式
    Bootstrap 内联标签和徽章
    each()详解
    highcharts图表属性
    Highcharts去掉一些小图标
    div怎么在底部设计一个倒三角形
  • 原文地址:https://www.cnblogs.com/williamliuwen/p/5369819.html
Copyright © 2011-2022 走看看