美文网首页
主题五《Runtime》

主题五《Runtime》

作者: 东方奇迹 | 来源:发表于2020-09-19 23:18 被阅读0次
    截屏2020-07-31 上午10.45.53.png 截屏2020-07-31 上午11.31.53.png 截屏2020-07-31 上午10.47.01.png 截屏2020-07-31 下午4.29.25.png 截屏2020-07-31 下午4.30.47.png 截屏2020-07-31 下午4.53.37.png 截屏2020-07-31 下午4.59.28.png 截屏2020-07-31 下午5.10.05.png 截屏2020-07-31 下午5.36.28.png 截屏2020-07-31 下午6.05.23.png 截屏2020-07-31 下午7.45.23.png 截屏2020-07-31 下午8.01.29.png 截屏2020-07-31 下午9.26.25.png 截屏2020-07-31 下午7.50.28.png 截屏2020-07-31 下午11.12.34.png 截屏2020-09-21 下午9.49.44.png 截屏2020-07-31 下午11.03.37.png 截屏2020-07-31 下午11.21.29.png 截屏2020-08-01 下午5.02.15.png 截屏2020-08-01 下午4.55.50.png 截屏2020-08-01 下午6.51.52.png 截屏2020-08-02 上午11.29.02.png 截屏2020-08-01 下午7.20.52.png 截屏2020-08-01 下午7.55.18.png 截屏2020-08-01 下午7.52.34.png 截屏2020-08-01 下午8.21.04.png

    左边如果是实例对象右边应该传类对象
    左边如果是类对象右边应该传元类对象

    截屏2020-08-01 下午8.48.19.png 截屏2020-08-01 下午8.51.23.png 截屏2020-08-01 下午8.56.25.png

    此题考查:supper的本质、栈空间(分配局部变量是从高地址往低地址分配的)、消息机制、访问成员变量的本质(找到对象的内存,然后找到对象内存里面的成员,就是跳过isa占用的8个字节找到下一个成员)。

    截屏2020-09-22 下午3.00.33.png 截屏2020-09-22 下午3.32.03.png 截屏2020-08-01 下午10.19.12.png 截屏2020-08-01 下午10.31.20.png 截屏2020-08-01 下午10.38.21.png 截屏2020-08-01 下午10.38.33.png 截屏2020-08-01 下午10.38.46.png 截屏2020-08-01 下午10.39.01.png 截屏2020-08-01 下午10.39.13.png 截屏2020-09-23 下午1.31.53.png 截屏2020-08-02 上午10.54.43.png 截屏2020-08-02 上午10.55.00.png 截屏2020-08-02 上午10.56.21.png 截屏2020-09-23 下午2.23.35.png 截屏2020-09-23 下午4.39.32.png 截屏2020-09-23 下午9.23.56.png

    1、oc的方法调用/oc消息机制?

    (1)oc中的方法调用其实都是转成了objc_msgSend函数的调用;
    (2)objc_msgSend底层有三大阶段:消息发送、动态解析、消息转发。

    2、什么是runtime?

    (1)oc是一门动态性很强的编程语言,允许很多操做推迟到运行时进行;
    (2)oc的动态性是有runtime支撑和实现的,runtime是一套c语言的API,封装了很多动态性的函数;
    (3)平时编写的oc代码底层都是转换成runtimeAPI进行调用的。

    3、runtime在项目中的具体应用?

    (1)利用关联对象(objc_setAssociatedObject)给分类添加属性;
    (2)遍历类的所有成员变量(修改输入框占位符字体颜色、字典转模型、自动归档解档);
    (3)交换方法实现(交换系统方法)(UIFont字体大小、UIButton图片的位置、viewWillAppear进行统一操作);
    (4)利用消息转发机制解决方法找不到的异常问题等等。

    4、常用API?

    相关文章

      网友评论

          本文标题:主题五《Runtime》

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