zoukankan      html  css  js  c++  java
  • OC中的内省(Introspection)方法

      我们在写OC代码的时候经常用到:isKindOfClass: 一类的方法,但是对于它并没有一个了解,这里也是从网上搜索了一些内容,简单介绍并记录一下。这类方法就是属于OC的特性之一:内省。

      内省(Introspection):

      是面向对象语言和环境的一个强大的特性,OC和Cocoa在这个方法尤其的丰富。内省是对象揭示自己作为一个运行时对象的详细信息的一种能力。这些详细信息包括对象在继承树上的位置,对象是否遵循特定的协议,以及是否可以响应特定的消息。NSObject协议和类定义了很多内省方法,用于查询运行时的信息,以便根据对象的特征进行识别。

      下面我们简单介绍几个NSObject的内省方法(项目中也是经常用到):

      1.isKindOfClass:

      检查对象是否是那个类或者其派生类实例化得对象

      2. isMemberOfClass:

        检查对象是否是那个类的实例化得对象

      3. respondToSelector:

      检查对象是否包含这个方法

      4. conformsToProtocol:

      检查对象是否符合协议,是否实现了协议中所有的必选方法

  • 相关阅读:
    git命令记录
    JS实现iframe自适应高度
    js生成某个范围内的随机数
    jquery实现按钮翻转动画
    删除ELK的索引
    ELK故障处理,不知道成功否
    软件开发的SOLID原则
    阿里云的远程桌面问题
    Zabbix增加邮箱后Server宕处理
    201811招投标培训要点
  • 原文地址:https://www.cnblogs.com/chenjiangxiaoyu/p/8504682.html
Copyright © 2011-2022 走看看