美文网首页
Runtime深入学习理解

Runtime深入学习理解

作者: 爱笑的Mr张 | 来源:发表于2020-07-16 10:27 被阅读0次

    1.什么是 runtime

    1.runtime 本质上是一套比较底层的 C语言,C++、汇编组成 API。我们称之为运行时,在 runtime 的底层很多实现是为了性能效率方面,都直接用汇编代码。

    2.我们平时编写的 OC 代码,需要 runtime 来创建类和对象,进行消息发送和转发,其实最终会转换成 runtime 的 C 语言代码。

    3.runtime 是将数据类型的确定由编译时推迟到了运行时。

    2.为什么要用 runtime

    1.OC 是一门动态语言,他会将一些工作放在代码运行时才去处理而非编译时,因此编译器不够,我们还需要一个运行时系统来处理编译后的代码

    2.runtime 基本是用 C 和汇编语言写的,苹果和 CNU 各自维护一个开源的 runtime 版本,这俩个版本之间都高度的保持一致。

    3.runtime 有什么作用?

    1.消息传递、转发<消息机制>

    2.访问私有变量

    3.交换系统方法

    4.动态增加属性、方法

    5.为分类添加属性

    6.字典转模型

    1.runtime 怎么添加属性、方法等

    ivar 表示成员变量,class_addIvar、class_addMethod、class_addProperty、class_addProtocol、class_replaceProperty

    1.1动态添加属性

    需求:给 NSObject 添加一个name 属性,动态添加属性-->

    相关文章

      网友评论

          本文标题:Runtime深入学习理解

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