iOS开发,RunTime总结

2021-02-26  本文已影响0人  iOS鑫

基础路径图:

image

在学习 RunTime 的基础时, 我们要搞清楚一些重要的东西, 一些专业术语:

我们可以从这些东西里获取到指定类的所有信息, 无论是公开的, 还是私有的, 全部都可以拿到, 并且操作.

PS: 但操作私有方法的时候, 注意不要用来上架, 除非你有方法让苹果审核的时候通过.

RunTime进阶

在学习 RunTime 进阶的时候, 我们就要了解更加的深入.

消息机制:

对象关联:

对象关联的策略:

动态方法解析:

RunTime应用

Category

Class

Model

RunTime实例开发场景

在实际开发中, 我们有一些实例场景会用到 RunTime :

Runtime Method Swizzling开发实例汇总

RunTime面试题及答案

ble data-draft-node="block" data-draft-type="table" data-size="normal" data-row-style="normal">问题: objc在向一个对象发送消息时, 发生了什么?r>ody></table>**b**le dat**a**-draft-node="block" d**a**ta-**d**raf**t**-type="table"** data-size="normal" data-row-style="normal">ody>问题: 什么时候会报 unrecognized selector 错误? iOS 有哪些机制来避免走到这一步?**able>ble data-draft-node="block" data-draft-type="table" data-size="normal" data-row-style="normal">body>r>问题: 能否向编译后得到的类中增加实例变量?能否向运行时创建的类中添加实例变量? 为什么?tbody></table>ble data-draft-node="block**" data-draft-type="table" data-size="normal" data-row-style="normal">body>题: runtime如何实现weak变量的自动置nil?r>>**b**le data-draft-node="block**" data-draft-type="table" data-size="normal" data-row-style="normal">问题: 给类添加一个属性后,在类结构体里哪些元素会发生变化********

总结

好了, 终于到尾声了, 希望大家可以在我的文章里学到知识, 早日迎娶白富美, 走上人生巅峰

感谢支持!文章持续更新 点赞再看,养成习惯,更多请关注!

上一篇下一篇

猜你喜欢

热点阅读