腾讯—最新iOS面试题总结

8次阅读

共计 1351 个字符,预计需要花费 4 分钟才能阅读完成。

关于面试题,可能没那么多时间来总结答案,有什么需要讨论的地方欢迎大家指教。主要记录一下准备过程,和面试的一些总结,希望能帮助到正在面试或者将要面试的同学吧。
腾讯
一面
1、介绍一下实习的项目,任务分工, 做了哪些工作?介绍实习内容 2、网络相关的:项目里面使用到什么网络库,用过 ASIHTTP 库吗 3、断点续传怎么实现?需要设置什么?4、在杭州 HTTP 请求服务器响应快,可能离服务器距离近,而在深圳访问就很慢很慢,会是什么原因?如果用户投诉,怎么分析这个问题?5、HTTP 请求的哪些方法用过?什么时候选择 get、post、put?6、TCP 建立连接的过程,断开连接的过程,为什么是四次握手?7、项目里面的数据存储都用了哪些?知道 iOS 里面有哪些数据存储方法?什么时候该用哪些方法存储?8、MVVM 如何实现绑定 9、block 和通知的区别,分别适用什么场景 10、算法。连续问了好几个,都是数组,层层递进的,但是我忘了,只记得最后是找出数组 11、中重复的数字 12、进程和线程的区别 13、程序在运行时操作系统除了分配内存空间还有什么 14、进程间通信的方式 15、如何检测应用是否卡顿 16、发布出去的版本,怎么收集 crash 日志?不使用 bugly 等第三方平台或者这些第三方平台是怎么收集 crash 日志的?17、在 block 里面使用_property 会造成循环引用吗?怎么解决?除了使用 self->_property,可以使用 valueforkey 来访问吗 在 block 里面可以修改它的值吗 setvalueforkey?可以修改它的值,可以用 valueforkey 来解决,显式的的使用 self,block 外先持有 self 的弱引用。
二面
1、OC 中对象的结构 2、多态 3、Ping 是什么协议 4、知道 MTU 吗 5、ARC 和 MRC 的本质区别是什么?6、NSThread,GCD,NSOperation 相关的。开启一条线程的方法?线程可以取消吗?7、子线程中调用 connection 方法,为什么不回调?因为没有加入 runloop,执行完任务就销毁了,所以没有回调。8、MVC 和 MVVM 的区别 9、了解哪些设计模式 10、存一个通讯录,包括增删改查,用什么数据结构 11、autorelease 变量什么时候释放?手动添加的是大括号结束的时候释放,系统自动释放是在 12、当前 runloop 循环结束的时候 13、那子线程中的 autorelease 变量什么时候释放?14、子线程里面,需要加 autoreleasepool 吗 15、GCD 和 NSOperation 的区别?16、项目里面遇到过死锁吗?怎么解决?数据库访问本来就是线程安全的,不会造成死锁啊。什么是死锁?17、Viewcontroller 的生命周期?18、在 init 方法里面,设置背景颜色,会生效吗 会生效。为什么会?19、WWDC2016 公布了哪些新特性?对苹果系列的最新特性有关注吗 20、看过哪些源码,讲讲思路 21、两个链表找第一个相同结点 22、字符串旋转 23、找链表的倒数第 k 个结点 24、把一个链表比某个值大的放在左边,比它小的放在右边 25、二叉树的中序遍历,非递归
更多:iOS 面试题(附答案)

另外附上一份收集的各大厂面试题(附答案)! 要的可加 iOS 高级技术群:624212887,群文件直接获取

正文完
 0