回馈牛客:网易互娱-Android面经
刚刚收到了互娱的Offer邮件,为了回馈牛客的大家这里就把之前的两轮面试的题目分享一下:
说实话难度比我之前面的难些,据我后面了解这个是应聘的移动工具类开发,相对来说比较偏基础架构的部门
# 1.对于第三方框架弹出的一个activity,如何保证在按下back键的时候不会销毁他?不能渗入第三方源码
# 1.对于第三方框架弹出的一个activity,如何保证在按下back键的时候不会销毁他?不能渗入第三方源码
# 2.源码问题
主要包括OKHttp、RxJava、Handler、HandlerThread、intentService的源码,主要了解这些框架或者类的设计思想以及几个关键步骤是如何实现的,不需要具体到每一个步骤(一般人也不会去记忆每一步吧)。
Handler他还问了除了那些基本用法,你自以为有哪些需要注意的地方,这种就看大家自己发挥啦
# 3.Synchronized与lock的区别?
# 4.JDK1.5的并发包你有哪些了解的?
# 5.你听说过countDownLatch?
# 6.你了解LinkedHashMap吗?
数组+双向链表实现,典型使用就是LRUCache,天生具有数据结构优越性
# 7.Https建立连接过程?你了解其中三个随机数吗?
OKHttp里面笔记有,这里不详细叙述了
# 8.算法:如何识别链表是否成环?如何找到环入口?
# 9.大数据算法:有一个2G文件,都是乱序int,可以使用一块200M内存,如果高效排序
# 10.如何实现微信的首页(一个是底部的导航另一个是侧滑)
底部导航我说的是使用MaterialDesign的BottomNavigation控件实现。
滑动可以通过viewpager+fragment实现
# 11.你是否熟悉Socket编程?
只是了解
# 12.你了解操作系统里面多线程同步方式?如何用信号量实现生产者和消费者模型?
# 13.你有用过数据库吗?了解吗?
# 14.onCreate中可以通过getHeight获得控件高吗?为什么?应该在什么时候可以获取?为什么?
# 15.你做过哪些性能优化的措施?
# 16.你关注过哪些博客?哪些公众号?有自己的博客吗?
#网易##面经##Android## 11.你是否熟悉Socket编程?
只是了解
# 12.你了解操作系统里面多线程同步方式?如何用信号量实现生产者和消费者模型?
# 13.你有用过数据库吗?了解吗?
# 14.onCreate中可以通过getHeight获得控件高吗?为什么?应该在什么时候可以获取?为什么?
# 15.你做过哪些性能优化的措施?
# 16.你关注过哪些博客?哪些公众号?有自己的博客吗?