2022年大约半年的时间,我都在准备找工作与找工作的过程中,每天疯狂做笔试题、投简历,卷的时候还不忘打开牛客瞄一眼,看着大家都没offer不经心里一松,结果一点开主页,好家伙西安交大、大连理工…?我差点被卷抑郁。
不过现在可算有家公司把我给收了。只能说,今年的秋招让我充分感受到了行业的寒气。这里以过来人的身份提个建议:大家一定要早作准备,锁定暑期实习,尽量避免秋招,说多了都是泪…
接下来,来总结一下我的复习经验和面经。首先,学习技术的脚步不能停,我们要持续储备知识,为求职打基础!
Android面试的知识点按照重要程度可以做一个这样的排序:
1.数据结构与算法
2.Java ,Android
3.计算机网络
4.操作系统
5.数据库或是设计模式之类
一、数据结构与算法
推荐书籍:大话数据结构,数据结构与算法分析(Java语言描述),剑指offer,进军硅谷。
推荐在线刷题网站:Leetcode
推荐方案:主要做三件事
1、先看一遍大话数据结构,熟悉一些基本概念,大话这本书只讲了一些基本的数据结构,像是B树,B+树,红黑树需要自己看一些博客或是网站,推荐一个讲解算法的网站-七月算法,另外海量数据处理也是一个经常考的专题,它结合了数据结构和操作系统的一些知识,这个需要进行针对性准备。
2、然后开始刷题,最推荐的肯定是leetcode,刷题建议按照标签进行刷题(比如队列,栈,哈希表),刷题从易到难,最好能够刷一百题左右,如果一天一题,至少要三个月以上,所以这个耗时比较长,要从比较早开始准备。进军硅谷这本书有按照专题进行编排,基本上的题目来自leetcode,可以作为一个参考。
3、然后要分析一些常见数据结构的源码实现(比如队列,栈,hashmap之类的),数据结构与算法分析这本书有讲一些,可以结合一些博客进行准备。
二、Java ,Android
Java这一块,比较重要的是多线程同步异步,Java虚拟机内存回收,容器,面向对象这些知识点。就单单是多线程和虚拟机都可以看好几本专门讲解的书了,其他知识点就多啃啃java编程思想,遇到不懂在多翻翻博客加深理解。
Android这一块,异步机制,view的绘制,自定义控件,四大组件都非常重要。不管是android或是java都最好看一些源码,java可以看一些容器的源码,android可以看handler,looper,message等异步通信的源码或是一些开源框架的源码,会看源码绝对是加分项。
三、计算机网络
计算机网络可以注重看上面几层,传输层注重研究。一般来说,前面这几点掌握好了,足以聊好几轮面试,一般面试官你都可以引导他去聊一些你擅长的知识点。后面几块知识点,你可以先掌握一些比较重要的,不一定每次面试都会遇到,但是也得准备。
注:操作系统和数据库放在下篇解析~
四、面试题合集
最后,除了打牢基础,大厂面试题库的积累必不可少。这里给大家分享一下我最新整理的Android开发岗面试题合集,涵盖2022年各个大厂的面试真题,非常全面。
第一章 Java基础
- 静态内部类和非静态内部类的比较
- 多态的理解与应用
- java方法的多态性理解
- java中接口和继承的区别
- 线程池的好处,详解,单例(绝对好记)
- 线程池的优点及其原理
- 线程池的优点(重点)
- 为什么不推荐通过Executors直接创建线程池
- 不怕难之BlockingQueue及其实现
- 深入理解ReentrantLock与Condition
- Java多线程:线程间通信之Lock
- Synchronized 关键字原理
- ReentrantLock原理
- HashMap中的Hash冲突解决和扩容机制
- JVM常见面试题
- JVM内存结构
第二章 Android基础
- Activity知识点(必问)
- Fragment知识点
- Service知识点
- Intent知识点
第三章 UI控件篇
- 屏幕适配
- 主要控件优化
- 事件分发与嵌套滚动
第四章 网络通信篇
- 网络协议
第五章 架构设计篇
- MVP架构设计
- 组件化架构
第六章 性能优化篇
- 启动优化
- 内存优化
- 绘制优化
- 安装包优化
第七章 源码流程篇
- 开源库源码分析
- Glide源码分析
- Android面试题:Glide
- day 20 面试题:Glide面试题
- 聊一聊关于Glide在面试中的那些事
- 面试官:简历上如果写Glide,请注意以下几点…
- Glide OOM问题解决方法汇总
- OkHttp源码分析
- Okhttp连接池复用机制
- Okhttp 流程和优化的实现
- 一篇让你受用的okhttp分析
- OkHttp面试之–OkHttp的整个异步请求流
- OkHttp面试之–HttpEngine中的sendRequest方法详解
- OkHttp解析大总结
- Okhttp任务队列工作原理
- Android高频面试专题 - 架构篇(二)okhttp面试必知必会
- Android 网络优化,使用 HTTPDNS优化 DNS,从原理到 OkHttp 集成
- Retrofit源码分析
- RxJava源码分析
- RxJava原理与源码分析
第八章 新技术篇
- 实战问题篇
第九章 面试篇
- 开源文档
- 面试题合集
(由于篇幅原因无法罗列所有面试题+解析,需要这份《2022Android中高级面试题汇总+解析》的可点击文末卡片自行领取👇👇👇)
其次
面试总体上是一个你跟面试官相会了解、相互交流的过程,大厂的面试官一般都很奈斯,如果你遇到不会的问题了,可以及时请教对方,不会了就问,不要怕丢面子,面试本就是一个学习和相互交流的过程,offer不是目的,只是个过程。
还有需要注意的一点,对于不会的东西,可以尝试从原理角度去回答,但是尽量不要说错,回答的不全和方向错了是两个概念。
以上就是这篇文章的全部内容啦!希望现在如果迷茫的小伙伴们看完能够找准好自己的方向努力拼搏,对于想跳槽和升职加薪的小伙伴能够让自己的技能更上一层楼!