iOS 开发面试的 43 道最新面试题,让你稳拿大厂 offer!
话不多说先看题,看看你能回答多少!
1:谈谈你对 KVC 的理解
2:iOS 项目中引用多个第三方库引发冲突的解决方法
3:GCD 实现多读单写
4:讲一下 atomic 的实现机制;为什么不能保证绝对的线程安全(最好可以结合场景来说)?
Autoreleasepool 所使用的数据结构是什么?AutoreleasePoolPage 结构体了解么?
6: iOS 中内省的几个方法?class 方法和 objc_getClass 方法有什么区别?
7: 分类和扩展有什么区别?可以分别用来做什么?分类有哪些局限性?分类的结构体里面有哪些成员?
8:能不能简述一下 Dealloc 的实现机制
9:HTTPS 和 HTTP 的区别
10:TCP 为什么要三次握手,四次挥手?
对称加密和非对称加密的区别?分别有哪些算法的实现?
HTTPS 的握手流程?为什么密钥的传递需要使用非对称加密?双向认证了解么?
如何用 Charles 抓 HTTPS 的包?其中原理和流程是什么?
什么是中间人攻击?如何避免?
了解编译的过程么?分为哪几个步骤?
静态链接了解么?静态库和动态库的区别?
App 网络层有哪些优化策略?
18:[self class] 与 [super class]
19.Class 与内存地址
排序题:冒泡排序,选择排序,插入排序,快速排序(二路,三路)能写出那些?
iOS 开发中的加密方式
App 安全,数字签名,App 签名,重签名
OC 数据类型
property 和属性修饰符
成员变量 ivar 和属性 property 的区别,以及不同关键字的作用
类簇
设计模式
架构设计
ReactiveCocoa 的使用及优缺点
类的继承,类能否多继承,协议能不能做继承
分类(category)和类扩展(extension)的区别
如何实现 week
字典注意事项:setvalue 和 setobject 的区别
多线程和锁
通知,能不能跨线程
网络 TCP 协议,三次握手
HTTPS 的加密原理
WebSocket 与 TCP Socket 的区别
事件传递和响应机制
runloop
runtime
isa 指针
block
这 43 到面试题都是一线大厂面试中问得最多的内容,面试前多刷一刷妥妥的增加成功率!点击此处获取答案
如果光有这些你还觉得稳妥,小编也搜集了许多的面试题合集,可以进咱们的 iOS 群获取哦 群号:1012951431
评论