==============================================================
感觉毕业后时间过得真快啊,从 19 年 7 月本科毕业入职后,到现在快两年了,最近金三银四期间想着找一个新的工作,前前后后花了一个多月的时间复习以及面试,最近基本上差不多了,把部分大厂的面试经验分享给大家,祝想找工作的同学都能去自己心仪的公司!
=======================================================================
-
自我介绍
-
Android 生命周期中 onStart 里面干了啥?
-
介绍一下 Activity 的四种启动模式
-
android:style 和 android:theme 的区别
-
http 和 https 的区别,http 组成,http 请求的整个过程
-
动画种类及其工作原理
-
线程启动方式,线程池原理清楚不?
-
讲讲 IntentService
-
知道哪些 Jetpack 组件?挑一两个讲讲原理
-
有哪些 ipc 方式
-
Sp 怎么支持跨进程?
-
Binder 原理流程介绍一下
-
window, view, activity 关系
-
软硬件绘制区别,性能比较,具体绘制任务(如复杂动画)怎么选择?
-
性能优化方式讲一讲
-
查找算法有哪些?手写二分查找
-
了解哪些跨平台方案?
=====================================================================
-
自我介绍
-
主要是抠实际项目,然后从中引出一些问题
=====================================================================
-
自我介绍
-
问项目的一些细节,优化方案等
-
SurfaceView, TextureView及View的区别。SurfaceView怎么控制它处于的层级
-
Binder工作流程
-
介绍一下MVC,MVP,MVVM,你们项目用的是哪个?
-
对组件化的理解,你们是怎么实现组件化的?功能模块之间互相引用会有什么问题?
-
内存优化工具,LeakCanary和MAT的原理
-
JVM内存模型
-
Java同步机制有哪些,volatile和syncronized区别
-
HashMap和HashTable区别,ConcurrentHashMap分段加锁的原理
-
二叉树的前中后遍历
-
算法:判断一棵树是否是平衡二叉树
-
算法题:给定一个链表L1、L2,每个元素是为10以内的正整数,链表表示一个数字,表头为高位。求两个链表之差,以链表形式返回
-
Java和Kotlin的一些区别,Kotlin的缺点?
-
SurfaceView和TextureView的区别?
-
了解过哪些插件化的实现?
-
说说ARouter的原理
-
两个业务组件模块之间,怎么实现相互调用接口?
-
让你设计一个下载功能,实现多个大文件同时下载,考虑哪些(断点续传)?
-
有没有音视频开发经验?
-
怎么处理内存泄漏?强引用弱引用?LeakCanary原理说一下。
=====================================================================
-
问更熟悉Java还是Kotlin,答Java,所以问的都是Java相关的一些题
-
HashMap扩容机制
-
Java volatile原理和作用
-
乐观锁,悲观锁区别
-
线程池工作原理,各个参数的作用
-
Android 三缓存是什么?为什么需要它
-
讲讲做的业务开发中比较有挑战的项目
-
还有一些比较常规的Android方面的问题,具体想不起来了
-
算法题:查找单链表中倒数第k个节点。做完后面试官问是不是刷过这道题,那我再出一道吧…
-
题:给定一台8核的手机,设计一个快速检索出sdcard下所有文件名为a的程序,返回一个列表
=======================================================================
-
主要深挖项目细节,有些不太清楚的最好别提,不然被挖到了很尴尬
-
平时怎么学习技术
-
在之前的公司,你对自己的成长满意吗
-
在面哪些公司,情况怎么样
=======================================================================
-
不记得了。。
-
算法题:给定一个排好序的数组,找出最左边的某个指定数字的下标。
========================================================================
-
介绍项目,问一些细节。
-
你认为Java和Kotlin的不同点,在编程范式角度再介绍一下区别?Java的lamda和Kotlin函数对象区别?
-
Kotlin协程为什么能以同步代码写出异步逻辑?
-
在协程上定义了一个局部变量,为什么在其中的其他线程里的协程也能访问到?
-
JetPack Compose有了解过没?
-
性能优化;ConstraintLayout为什么效果好?为什么多了层级,性能可能会差很多?
=====================================================================
-
依旧是项目细节,三面比较长的时间都是项目
-
为什么要离职,家是哪里的之类的问题
========================================================================
小福利:
在当下这个碎片化信息环境的时代,很多资源都可以在网络上找到,只取决于你愿不愿意找或是找的方法对不对了
很多朋友不是没有资料,大多都是有几十上百个G,但是杂乱无章,不知道怎么看从哪看起,甚至是看后就忘
如果大家觉得自己在网上找的资料非常杂乱、不成体系的话,我也分享一套给大家,比较系统,我平常自己也会经常研读。
2021大厂最新Android面试真题解析
各个模块学习视频:如数据结构与算法
只有系统,有方向的学习,才能在段时间内迅速提高自己的技术。
这份体系学习笔记,适应人群:**第一,**学习知识比较碎片化,没有合理的学习路线与进阶方向。**第二,**开发几年,不知道如何进阶更进一步,比较迷茫。第三,到了合适的年纪,后续不知道该如何发展,转型管理,还是加强技术研究。如果你有需要,我这里恰好有为什么,不来领取!说不定能改变你现在的状态呢!点赞+评论即可获得!
6131322865)]
[外链图片转存中…(img-MGmcFbhX-1726131322865)]
这份体系学习笔记,适应人群:**第一,**学习知识比较碎片化,没有合理的学习路线与进阶方向。**第二,**开发几年,不知道如何进阶更进一步,比较迷茫。第三,到了合适的年纪,后续不知道该如何发展,转型管理,还是加强技术研究。如果你有需要,我这里恰好有为什么,不来领取!说不定能改变你现在的状态呢!点赞+评论即可获得!