移动客户端开发(抖音)面经

一面

java:

1、jvm启动过程? 验证是验证什么

2、强引用、软引用、弱引用、虚引用,是什么?分别在什么时候用

3、反序列和序列化 为什么要? 什么情况下要?

4、反射 为什么要反射? 什么时候用? 缺点?

5、hashcode 为什么出现、是什么、equals关系

c语言:

6、include 作用、import作用

7、static关键字:c跟java

8、动态编译、静态编译

9、线程通信

10、设计模式:生产者消费者、工厂模式、单例模式(3种实现、为什么双验证)你会怎么设计

11、tcp和udp区别

11、做一道题topk的题,指定用快排的思路

二面

1、项目及项目里用到的知识

2、3次握手、4次挥手、为什么不4次、5次

3、数据结构,10大排序挑2个讲

4、计算机系统,中断是怎么实现的

5、计算机系统的锁底层是怎么样实现的

6、多核cpu,多线程怎么访问同一个内存

安卓:

7、怎么学安卓

8、handle作用,为什么

9、有没有写过安卓的多线程

还有的有点记不清了

三面

1、项目,项目遇到什么问题,怎么解决

2、有没有接触过安卓,怎么看内存占用情况

3、有没有用过什么框架

4、有没有用过GitHub

5、安卓生命周期

c++:

6、list与vector区别

7、多态

8、能不能来实习

9、做题

排序,给一个链表,按照链表某个值排序

最后更新于