腾讯安卓开发面经

一面:(一小时四十分钟)
自我介绍
介绍你自己的项目,后面大部分问题都会按着你的项目来
计算机网络HTTP协议
为什么是三次握手,四次挥手而不是两次,三次
TCP长连接,短连接区别
Socket的长连接你是怎么做的
....
数据库的三范式设计原则 , 索引怎么设计有什么影响
计算机系统内核态和用户态
Java基础:final,finally和finalize有什么区别
抽象类和接口的区别以及使用场景
java内存模型
String,StringBuilder,和StringBuffer的区别
HashMap实现源码,以及线程安全的Map
线程状态以及线程通信,线程锁
怎么保证线程安全
synchronized的监视器应该怎么设置
volatile关键字会做什么
....
android相关:
activity的生命周期分析(比如按下关机键会发生什么)
activity启动模式。每一种的应用场景
Service的两种启动方式,比较不同点
Binder的原理,为什么是内存拷贝一次,还知道哪些IPC方式
读过哪些源码,Handler源码说一下

算法:(1)写一个洗牌功能
(2)手写冒泡算法

总结得不全面,但一面几乎全都把所有知识点都问完了,只要基础复习的全面没什么问题

二面:(一个小时,噩梦的开始....)
首先做一道手撕算法题:
已知两条链表都是升序的,合并这两条链表,并保持升序状态(剑指offer原题)
问点java相关的:
final用法
泛型的擦除讲一下,没答好
怎么定位内存泄漏,哪些工具(讲了MAT,LeakCanary,Lint
LeakCanary怎么实现的,如果你要来设计一个工具检测内存泄漏那怎么做。。。蒙了一阵
类加载过程过程说一下,为什么要设计成父类委托加载
内部类和静态内部类,使用内部类需要注意什么问题,为什么要这么设计

二面基础答了不够,几乎都要问你为什么,怎么去设计,哎真招架不住,估计凉了,接着投其他公司吧。。。。




#腾讯##面经##安卓工程师##校招#
全部评论
加油,感觉除了后面的设计内存泄漏之外都还好
点赞 回复
分享
发布于 2019-08-15 22:58
二面多久出的结果
点赞 回复
分享
发布于 2019-08-16 12:50
阅文集团
校招火热招聘中
官网直投

相关推荐

2 39 评论
分享
牛客网
牛客企业服务