• O-C相关-09-id 类型与应用


    09-id 类型与应用

     

    1, 使用 NSObject 访问子类对象方法

     

    代码在编辑的时候, Xcode 会实时检查语法情况. 如果调用某个对象的方法, 在声明中没有该方法的声明, 那么就会报错.

     

    但是对齐发消息, 是可以编译通过的. 但是运行时就不一定了.

     

     

    2, id 类型

     

    虽然可以利用发送消息执行可以调用子类方法, 但是相对较麻烦. 苹果提供了一个 id 类型, 该类型允许引用任何对象, 并且不会检查类型, 在使用的时候才会检查.

     

     

    3, id 类型与 NSObject 的区别

     

    -> NSObject 会进行编译检查

    -> Id 类型只有到运行时才知道数据类型是什么

    -> 但是如果 id 类型指向的对象中没有方法,也无法发消息

     

     

    4,instancetype 类型

     

    在 iOS 5.0 之后, 引入了 instancetype 类型的数据. 它和 id 类型类似

    -> instancetype可以返回和方法所在类相同类型的对象,id只能返回未知类型的对象

    -> instancetype只能作为返回值,不能像id那样作为参数

     

     


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    听说,好久不更了......
    JavaScript中数组常用方法
    html5常用英语单词
    重写与重载的区别
    RelativeLayout以及ListView
    树莓派基础配置
    通过yum安装lnmp-phpmyadmin
    POJ1850
    基于字典序的组合生成算法
    全排序之字典排序
  • 原文地址:https://www.cnblogs.com/wahy/p/4817236.html
Copyright © 2020-2023  润新知