一面(电话面试):
- arc的原理,在mrc和arc下如何获取对象的引用计数
- const、static以及全局变量的区别
- 内存的大小端存储,int的高权位在哪一端
- iOS中是实现多线程有哪些方式及使用
- int、chat、double类型内存大小,及sizeof的使用
- UIResponder的事件响应流程
- OC的编译过程中有哪些流程要处理
- iOS中数据持久化有哪些方式及使用
- include与import区别
- Block的基本知识及使用
- TableView中Cell高度缓存方案:二维数据,字典及缓存数据模型中。
- TableView中定高cell和变高cell如何处理
- 项目中遇到的最大困难
二面(现场面试):
- 继一面arc/mrc获取对象的引用计数:CFGetRetainCount、retainCount
- 追问到CFGetRetainCount、retainCount在那些情况下返回的计数是不正确的
- @property中weak,strong,copy,assgin,retain,nonatomic等字段含义与用法
- 有上面问题延伸到MRC与ARC下的循环引用
- 在MRC和ARC下分别如何消除循环引用
- weak的内部实现原理及在MRC下如何实现weak
- 关联对象内部原理(主对象如何指向到它的关联对象)
- 简述OC的runtime:对象模型与消息机制
- OC与java的runtime上的区别
- 伪代码实现利用后缀表达式算法来简化中序逻辑表达式()
三面(HR面试):
主要问一些今后的发展方向和一些兴趣爱好