字节跳动 Anroid开发 一二面面经

4.1字节跳动 一面(70min)

1、挑一个项目介绍一下

2、为什么会选择使用OkHttp框架

3、有用到OkHttp框架的什么特性吗?

4、通过什么样的形式与服务端交互的?

5、怎样保证网络通信的安全呢?

6、介绍一下token

7、如果token被其他人拦截了,拦截者是否可以直接通过token来访问服务器呢?

8、挑一个项目中最重要的功能说一下

9、OkHttp的网络请求是在主线程中进行的还是子线程?

10、网络请求完成后如何更新UI的呢?

11、为什么UI的更新需要放在主线程中进行?

12、讲一下Handler机制

13、如何发送延时消息?Handler是如何处理延时消息的?

14、如果消息队列的第一个消息是有延迟的,那么Handler是怎么处理的呢?

15、Handler的阻塞会一直占用CPU吗

16、什么是线程安全?

17、如何判断一个方法是线程安全的?

18、方法只要加了锁就是线程安全的吗?

19、举一个线程不安全的例子

20、线程不安全的集合类有哪些?线程安全的集合类有哪些?

21、HashMap的线程不安全性是如何体现的呢?

22、多次线程环境下HashMap会出现哪些线程不安全的问题?

23、ConcurrentHashMap能保证绝对的线程安全吗?

24、ArrayList底层结构是怎样的?

25、ArrayList的扩容是如何实现的?

26、Java类加载机制有哪些阶段?举例一个类的加载过程。

27、了解Java类加载器吗?

28、为什么要使用双亲委派模型来加载类呢?

29、说一下Serializeable接口和Parcelable接口

30、为什么Parcelable的效率更高?

31、讲一下Binder通信机制

32、Linux系统中有哪些跨进程的通信机制?

33、既然Linux系统中有这么多的进程间通信方式了,为什么Android中还要增加一个Binder?

34、Linux的进程间通信机制都是通过两次拷贝实现的吗?

35、Binder是如何实现一次拷贝的?

36、内存共享是怎么实现进程间通信的?它的两次拷贝是发生在什么时候?

37、算法题:给定几个区间,有交集则合并,求最后的还剩下哪些区间。

38、通过口算的方式,估计3的100次方的十进制结果,大概有多少位?


二面录音还没来得及听,之后补上。

#Android##字节跳动##面经#
全部评论
楼主什么部门啊?
点赞 回复
分享
发布于 2021-04-07 21:22
可以啊
点赞 回复
分享
发布于 2021-05-21 00:53
联想
校招火热招聘中
官网直投

相关推荐

3 32 评论
分享
牛客网
牛客企业服务