zoukankan      html  css  js  c++  java
  • 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那样作为参数

     

     


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

  • 相关阅读:
    第一周博客作业(学习历程和感想)
    WordCount 基础功能
    MyBatis 分页插件 PageHelper 使用
    手机尾号猜年龄骗局解密
    逻辑思维题一
    给div添加滚动条
    my97中文乱码问题
    cookie中文乱码
    多线程下的单例模式
    HTML5的入门与深入理解
  • 原文地址:https://www.cnblogs.com/wahy/p/4817236.html
Copyright © 2011-2022 走看看