最后,面试前该准备哪些资源复习?
其实客户端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
这里再分享一下我面试期间的复习路线:(以下体系的复习资料是我从各路大佬收集整理好的)
《Android开发七大模块核心知识笔记》
《960全网最全Android开发笔记》
《379页Android开发面试宝典》
历时半年,我们整理了这份市面上最全面的安卓面试题解析大全
包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。
《507页Android开发相关源码解析》
只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。
真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
-
handler机制,sendMessage和post(Runnable)的区别。
-
ThreadLocal原理,底层实现
-
HashMap底层,扩容,LinkedHashMap
-
Service的onBind和onStart差别
-
Activity启动生命周期,A跳转B
-
Android持久化方案,SharedPreference是否可以跨进程通讯。ContentProvider
-
ClassLoader机制,双亲委派。如果我要写一个Activity类,那怎么保证加载的是我自己写的Activity
-
算法题,约瑟夫环
-
反问
字节跳动二面面试题(1hour):
-
自我介绍
-
项目技术点详解
-
写过什么自定义View
-
OkHttp代码看过吗,用了什么设计模式
-
MVC、MVP区别,项目中的实现。
-
LiveData和EventBus的相关讨论,真的是讨论,畅所欲言
-
看过哪些源码
-
SharedPreference相关
-
Android动画了解吗,用过什么
-
TCP、UDP区别,面试时的语音用的是什么,为什么要这么用。
-
代码题,5个线程对一个int进行累加到1000.
1* 反问
小总结:两面面试官都很和善,所有的问题都是在讨论,我不会的他们也容许我猜一下,然后告诉我猜的对不对……
字节跳动三面面试题(50mins):
-
自我介绍
-
算法,跳棋盘
-
浏览器输入URL到渲染全过程
-
Http请求报文响应报文
-
http2.0有哪些优化
-
用过哪些网络库
-
OkHttp的Intercepter
-
Android持久化方式
-
Java线程同步的数据结构
-
对未来的技术有什么规划?你为什么要学这些技术?
-
反问
字节跳动面试题答案+解析:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZzkOu8yD-1611582679538)(//upload-images.jianshu.io/upload_images/16595031-5f6f528ba363c9c7.png?imageMogr2/auto-orient/strip|imageView2/2/w/1080)]
美团点评一面面试题(30分钟):
-
实习期间公司项目,自己开发的项目
-
进程和线程的区别
除了常规的,还比较了一下两者调度的区别,进程是靠中断来使系统陷入内核态然后完成调度,线程是依靠JVM进行。
- 线程的状态。
新建、就绪、运行、阻塞、死亡。不小心把进程的僵死什么的给说了……还好面试官捞了一手
-
TCP属于哪个层、TCP三次握手四次挥手。
-
Activity生命周期,A启动B生命周期变化。
-
自定义View,需要重写哪几个方法。如果要你实现WIFI信号的显示,那么你会怎么做。
-
Android动画了解吗。
说了过渡动画,说了自己封装的ObjectAnimator工具类,以及MotionLayout相关使用、以及过渡动画实现共享Item的用法。
- 算法,打印2到100所有的质数,不要求效率,你输出就好了……
美团点评二面面试题(1hour):
-
自我介绍
-
实习期间做的最成功的一件事,为什么觉得最成功。
-
针对具体的实习过程进行了讨论。
-
Java泛型。
-
为什么基本重写equals方法时也需要重写hashCode方法。
-
手撕生产者消费者模型,很惭愧……没撕出来。
-
成绩怎么样……LZ本科期间及其浪荡,成绩很差,然后面试官脸色就变了。心态就有点崩。
-
计算机怎么画一条线,底层怎么实现的。
-
PV原语。
-
排序算法。
-
树的遍历方式。
-
反问。
**心得体会:**成绩不好的同学需要谨慎回答关于成绩的问题,不要那么直白,是把双刃剑。华为面试的时候说自己成绩不好,但是有博客和github作为后期努力的支撑,面试官就还是很开心。
美团点评三面面试题:
-
自我介绍。
-
实习工作介绍。
-
如果让你从0开始搭建一款APP,你会怎么做。比如说就是美团外卖。
-
基础类设计
-
网络设计
-
兼容性考虑
-
代码质量保证
-
测试相关
-
设计模式的使用
-
MVVM架构的使用
-
学校学习了什么课程,成绩怎么样……
-
代码,快排。
-
反问
问了一下美团对于Android应届生的需求,得到的答复是需要CS相关基础好,其他的要求比较宽松。
还有就是学习Android的方法,大佬说多看各种不同APP和优质框架的源码,从源码中学习。
**总结:**问题很少,每题都很致命……而且是没有答案的那种,你得自己思考。这个时候可以许愿一波hr面了。
美团点评HR面:
- 自我介绍,抓住介绍的点让你详细说说?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
让你详细说说?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!