__kindof

作者: YuWenHaiBo | 来源:发表于2016-08-28 21:21 被阅读23次

    ** __kindof ** 表示当前类或者它的子类
    好处: 在调用的时候很清楚的知道 返回类型
    ** __kindof ** 书写格式:
    放在类型的前面:

    在说__kindof之前先说说 id 和 instanceType
    先创建两个对象类: Person 和 SonPerson继承Person

    在Person类中实现类方法用于初始化

    当我们指定返回值类型是id的时候就会出现指向不准确我们可能用了NSString字符串来接收,调用了字符串的length方法,但是person没有这个方法所以就会造成方法找不到错误

    由于对象是id类型所以编译器会提供一些不是person类的方法

    为了解决这个我们可以指定具体的类型,但是指定了具体类型后,用他的子类去接收的时候就会造成不兼容


    为此Apple公司推出来intancetype类型

    虽然不会报警告了但是还是不知道类型是什么依然不能好好使用

    因此推出了__kindof

    完美解决问题

    // id 坏处 :
          1. 不能在编译的时候检测真实的类型
          2.  返回值,没有提示        
          3. id类型的对象调用的方法的时候提示的不准确
     // instanceType 
         会自动识别当前的类型
        但是还是无法得知用什么类型去接收
    
    

    相关文章

      网友评论

          本文标题:__kindof

          本文链接:https://www.haomeiwen.com/subject/yuqxettx.html