回顾OC

作者: fcf7850dd33e | 来源:发表于2024-02-05 16:32 被阅读0次

1、OC的消息转发机制

1、消息查找:从方法缓存中找方法,找不到去方法列表中找,找到了将该方法加入方法缓存,还是找不到,去父类里重复前面的步骤,如果找到底都找不到那么进入2

2、动态解析:看该类是否实现了resolveInstanceMethod:和resolveClassMethod:,如果实现了就解析动态添加的方法,并调用该方法,如果没有实现进入3

3、消息转发:

调用forwardingTargetForSelector:看返回的对象是否为nil,如果不为nil,调用objc_msgSend传入对象和SEL。

如果上面为nil,那么就调用methodSignatureForSelector:返回方法签名,如果方法签名不为nil,调用forwardInvocation:来执行该方法

4、一直没有处理成功,最后会报错

objc_msgSend

2、KVC/KVO

3、内存管理

4、Block :https://www.jianshu.com/p/4e79e9a0dd82

5、多线程

//多线程/锁/线程安全/线程同步/NSOperation

    //GCD:

https://www.jianshu.com/p/2d57c72016c6

    //锁: http://www.cocoachina.com/articles/34796?filter=rec

    //锁:https://www.jianshu.com/p/ddbe44064ca4

    //锁:https://www.jianshu.com/p/65dd76287673

    //https://www.jianshu.com/p/6d6832e42936

    //读写锁

    /*

     1、GCD 高级用法

                串行队列            并行队列          主队列

     同步    无新线程、串行执行  无新线程、串行执行      死锁

     异步    开1条线程串行执行                    没有开启新线程,串行执行

     */

相关文章

  • OC回顾

    一、类和对象 1.定义:类是具有相同特征和行为的事物的抽象,对象是类的具体化,类是对象的类型。 2.面向对象的三大...

  • 总结:八天学会OC语言(上)

    day1 OC语言day01-01OC的简介(附C语言知识点回顾)OC语言day01-02C和OC的对比OC语言d...

  • 回顾OC基础2

  • oc基础知识回顾

    oc基础知识回顾 1.import的作用 2.OC中的数据类型 3.NSArray和NSMutableArray不...

  • iOS笔记篇-熟悉OC<三>

    前言 首先回顾下前面两篇文章的内容。 熟悉OC<一>中提到,在OC语言的起源,OC语言为C语言的超集,所以可以容纳...

  • swift 闭包(类似OC中block)

    swift中的闭包 类似OC中block OC中block 回顾创建个HttpTool类.h .m 控制器中 sw...

  • iOS swift 懒加载的使用

    记录一下swift的懒加载 OC回顾懒加载 - (UIButton *)but{ if (!_but){ _but...

  • OC底层知识(八) : block

    提示:下面会把OC相应的类转化为C++代码,OC代码转C++代码的生成 一、block 知识回顾block 是一个...

  • swift中函数可变参数的使用

    情景回顾(OC篇)在使用oc开发的时候就接触了函数可变参数的概念,用的最多的当然是在创建UIAlertView和A...

  • OC知识点回顾

    面向对象三大支柱封装:就是把相关的数据和代码结合成一个有机的整体,形成数据和操作代码的封装体,对外只提供一个可以控...

网友评论

      本文标题:回顾OC

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