2020——iOS面试题汇总!
runloop
推荐相关文章
2019 iOS面试题-----RunLoop数据结构、RunLoop的实现机制、RunLoop的Mode、RunLoop与NSTimer和线程
1.app如何接收到触摸事件的
2.为什么只有主线程的runloop是开启的
3.为什么只在主线程刷新UI
4.PerformSelector和runloop的关系
5.如何使线程保活
KVO
1.实现原理
2.如何手动关闭kvo
3.通过KVC修改属性会触发KVO么
4.哪些情况下使用kvo会崩溃,怎么防护崩溃
5.kvo的优缺点
runtime相关问题
结构模型
1.介绍下runtime的内存模型(isa、对象、类、metaclass、结构体的存储信息等)
2.为什么要设计metaclass
3.class_copyIvarList & class_copyPropertyList区别
4.class_rw_t 和 class_ro_t 的区别
5.category如何被加载的,两个category的load方法的加载顺序,两个category的同名方法的加载顺序
6.category & extension区别,能给NSObject添加Extension吗,结果如何
7.消息转发机制,消息转发机制和其他语言的消息机制优劣对比
8.在方法调用的时候,方法查询-> 动态解析-> 消息转发 之前做了什么
9.IMP、SEL、Method的区别和使用场景
10.load、initialize方法的区别什么?在继承关系中他们有什么区别
11.说说消息转发机制的优劣
<meta charset="utf-8">
Block
相关文章;2019 iOS面试题-----Block原理、Block变量截获、Block的三种形式
1.block的内部实现,结构体是什么样的
2.block是类吗,有哪些类型
3.一个int变量被 __block 修饰与否的区别?block的变量截获
4.block在修改NSMutableArray,需不需要添加__block
5.怎么进行内存管理的
6.block可以用strong修饰吗
7.解决循环引用时为什么要用__strong、__weak修饰
8.block发生copy时机
9.Block访问对象类型的auto变量时,在ARC和MRC下有什么区别
作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:761407670 进群密码‘博客’,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!
另附上一份各好友收集的大厂面试题,进群可自行下载!
数据结构与算法
1.八大排序算法
2.栈&队列
3.字符串处理
4.链表
5.二叉树相关操作
6.深搜广搜
7.基本的动态规划题、贪心算法、二分查找
推荐算法相关文章
2、2019 算法面试相关(leetcode)--数组和链表
7、2019 算法面试相关(leetcode)--树、二叉树、二叉搜索树
8、2019 算法面试相关(leetcode)--递归与分治
10、2019 算法面试相关(leetcode)--动态规划(Dynamic Programming)
11、2019 算法面试相关(leetcode)--动态规划之背包问题
性能优化
如何做启动优化,如何监控
如何做卡顿优化,如何监控
如何做耗电优化,如何监控
如何做网络优化,如何监控
推荐相关文章
多线程
主要以GCD为主
1.iOS开发中有多少类型的线程?分别对比
2.GCD有哪些队列,默认提供哪些队列
3.GCD有哪些方法api
4.GCD主线程 & 主队列的关系
5.如何实现同步,有多少方式就说多少
6.dispatch_once实现原理
7.什么情况下会死锁
8.有哪些类型的线程锁,分别介绍下作用和使用场景
9.NSOperationQueue中的maxConcurrentOperationCount默认值
10.NSTimer、CADisplayLink、dispatch_source_t 的优劣
推荐相关文章
iOS 说一下 OperationQueue 和 GCD 的区别,以及各自的优势?
2019 iOS面试题-----多线程相关之GCD、死锁、dispatch_barrier_async、dispatch_group_async、Dispatch Semaphore
2019 iOS面试题-----多线程相关之NSOperation、NSOperationQueue、NSThread+runloop实现常驻线程、加锁
这个栏目将持续更新--请iOS的小伙伴关注!
7、iOS 说明并比较关键词:atomatic, nonatomic
8、iOS 说明并比较关键词:strong, weak, assign, copy
持续更新--请iOS的小伙伴关注! 喜欢的话给一个赞吧!
作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:761407670 进群密码‘博客’,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!