iOS-Main-运行时-获取对象的属性数组

作者: 麦穗0615 | 来源:发表于2016-10-01 08:54 被阅读953次

简单介绍一下Runtime-运行时:

  • 运行时是一种面向对象的编程语言的运行环境,类似于java的虚拟机
  • OC最主要的特点就是在程序运行时,以发送消息的方式调用该方法
  • 运行时是OC的核心,Objective-C即使基于运行时的
  • 参考文档:http://nshipster.cn/swift-objc-runtime/

利用clang生成中间代码

  • 进入终端
  • 输入以下命令:
    $ clang -rewrite-objc main.m
  • 可以将OC代码重写成C++代码

导图:

底层OC
使用场景

运行时获取对象的属性数组

  1. 创建项目,设置类Person并声明属性age,name,如下图:


    创建项目
  1. 创建一个继承于NSObject的分类Runtime。并导入运行时的头文件。并声明方法,如下图:


    导入运行时的头文件并声明方法

    上述,运行时的头文件应该导入到.m中。

  2. 实现分类的方法
    测试
    1
    2
    3
    根据运行时,我们可以获取继承于NSObject调用,该方法的类,属性值有两个。
    假如,改成三个:
    改成三个
    问题:
    我们看见copy,就要释放,看下图:
    必须释放
  3. 获取属性名称
    具体步骤,请看下图:
    改正
    打印结果
    这样已经可以动态的获取了属性的名称
    验证:
    验证:
    5)实现目标
    再来看我们的目标-获得一个属性的数组。

    完成
    整体逻辑
    整体逻辑

相关文章

网友评论

    本文标题:iOS-Main-运行时-获取对象的属性数组

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