面试BAT,37个底层的iOS面试题总结(跳槽加薪必备)

335 阅读2分钟

前言

最近又把各个大厂的 iOS面试题整理了, 题目大部分是网上收录的, 方便自己巩固复习, 也分享给大家; 希望对大家有所帮助!

  • 此次iOS面试题 ,底部会提供一份答案

题集大全

  • 1: 谈谈你对KVC的理解
  • 2: iOS项目中引用多个第三方库引发冲突的解决方法
  • 3: GCD实现多读单写
  • 4: 讲一下atomic的实现机制;为什么不能保证绝对的线程安全?
  • 5: Autoreleasepool所使用的数据结构是什么?
  • 6: AutoreleasePoolPage结构体了解么?
  • 7: iOS中内省的几个方法?
  • 8: class方法和objc_getClass方法有什么区别?
  • 9: 分类和扩展有什么区别?可以分别用来做什么?
  • 10: 分类有哪些局限性?分类的结构体里面有哪些成员?
  • 11: 能不能简述一下Dealloc的实现机制
  • 12: HTTPS和HTTP的区别
  • 13: TCP为什么要三次握手,四次挥手?
  • 14: 对称加密和非对称加密的区别?分别有哪些算法的实现?
  • 15: HTTPS的握手流程?为什么密钥的传递需要使用非对称加密?双向认证了解么?
  • 16: 如何用Charles抓HTTPS的包?其中原理和流程是什么?
  • 17: 什么是中间人攻击?如何避免?
  • 18: 了解编译的过程么?分为哪几个步骤?
  • 19: 静态链接了解么?静态库和动态库的区别?
  • 20: App网络层有哪些优化策略?
  • 21: 排序题︰冒泡排序,选择排序,插入排序,快速排序(二路,三路)能写出那些?
  • 22: iOS开发中的加密方式
  • 23: App安全,数字签名,App签名,重签名
  • 24: OC数据类型
  • 25: property和属性修饰符
  • 26: 成员变量ivar和属性property的区别,以及不同关键字的作用
  • 27: 类簇的优缺点
  • 28: 谈谈设计模式
  • 29: 谈谈架构设计
  • 30: ReactiveCocoa的使用及优缺点
  • 31: 类的继承,类能否多继承,协议能不能做继承?
  • 32: 分类(category)和类扩展(extension)的区别
  • 33: 如何实现week
  • 34: 字典注意事项:setvalue和setobject的区别
  • 35: 多线程和锁
  • 36: WebSocket与TCP Socket的区别
  • 37: 事件传递和响应机制

点击获取:iOS面试题答案