最后,如果大伙有什么好的学习方法或建议欢迎大家在评论中积极留言哈,希望大家能够共同学习、共同努力、共同进步。
小编在这里祝小伙伴们在未来的日子里都可以 升职加薪,当上总经理,出任CEO,迎娶白富美,走上人生巅峰!!
不论遇到什么困难,都不应该成为我们放弃的理由!
很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习
如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言,一定会认真查询,修正不足,谢谢。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
前15分钟
-
个人介绍, 什么时候接触的安卓开发, 实习能实习多久, 介绍一下项目
-
你说你的软件出现了OOM, 你怎么解决的? 线上crash你是用了什么来分析的?
-
这些项目都是怎么来的? 软件中这些内容都怎么来的? 你知道后端怎么来的吗? 后端是不是爬下来的? 每天有多少上传量呢?
接下来15分钟
-
进程和线程有啥区别呢? 为什么要定义出这样的概念来? 有什么用呢?
-
哈希表是一个怎样的数据结构? 怎么避免hash碰撞? 容量有什么样的特点?
-
数据库有了解吗? 索引了解吗? 怎么实现的快速查找? 快速查找的是什么东西?
-
TCP协议如何确保稳定传输?
-
说一下Activity的启动模式
-
Handler有了解吗? 说一下原理? 你刚才说到Looper是个死循环, 那么messageQueue 没消息的时候那它不还是会循环占用CPU资源吗?
-
我看你用过一些开源库比如说okhttp, 你能说一下原理吗? 分析一下 okhttp 自带的这些 InterceptorChain 是干啥的? 这些 Interceptor 的用途呢?
然后12分钟
你觉得有什么你擅长的但是我还没问的??
-
那我讲一下屏幕怎么绘制view的吧
-
为什么多次测量性能差了呢? Compose是怎么解决这些的?
-
onMeasure里面有个东西叫MeasureSpec, 你说一下这是一个什么样的数据
最后一道算法: 剑指 Offer 38. 字符串的排列 - 力扣(LeetCode) (leetcode-cn.com)
可能当时没答上来的只有个 HashMap 如何尽可能避免碰撞了
-
你主要用的 Java 还是 Kotlin?(我: Kotlin, 面试官:那我问你点 Java 的东西吧)
-
怎么创建一个线程? start 和 run 的区别? 线程和进程的区别? 进程可以没有线程吗?
-
Android 里面, 主线程的作用是什么? 刷新UI能放到其他线程里面吗? 你说的可以放到其他线程的特殊情况是什么呢? 怎么在子线程弹一个 toast?(提前 Looper.prepare 就行了)
-
Looper.prepare
做了什么事情呢? 能介绍一下ThreadLocal
的含义吗, 内部实现原理呢? -
Java里我们要访问本地一个文件, 我们应该怎么办? FileInputStream读取的是二进制流数据, 怎么读取文本呢? 怎么判断读到文件末尾了呢?
-
你有没有遇到什么比较难的问题呢? (我: OOM 我项目经常出现(这里想让面试官问我项目, 淦 他不问)) 什么场景会产生OOM呢? 什么原因呢? 怎么解决的呢?
-
假设一个图片很大, 应该怎么处理呢? (我: Glide/BitmapFactory(这里想让面试官问Glide 淦 他不问)), 具体是怎么缩放的呢? 假设 BitmapFactory 的 inSampleSize 设置为2的话, 图片内存占用缩小为多少? ARGB_8888和RGB_565的区别?
-
HTTP请求常用的header说一下? 常见的状态码说一下? 206是什么? 你用过断点续传吗?
-
介绍一下Jetpack组件的
ViewModel
和LiveData
怎么用的, 为什么ViewModel可以跟随Activity的生命周期而在旋屏时候保留数据呢? (这里说到ViewModel我提到了MVVM架构, 我想让他问, 淦 他没问) -
堆内存和栈内存有啥区别呢? (我这里说堆内存是gc的主要区域, 我想让他问我gc, 淦 他没问) 分别存啥?
-
Java里面
ClassLoder
加载机制是什么? 是先去parentClassLoder里面加载还是我自己的里面加载呢? 这样做的目的是什么呢? -
Java反射了解吗? 这么去访问一些私有的方法和变量呢?
算法题: 230. 二叉搜索树中第K小的元素 - 力扣(LeetCode) (leetcode-cn.com)
刚开始递归遍历子节点个数, 面试官说你这样还会多次遍历啊, 能降低一下复杂度吗? 然后我用了中序遍历
你这个算法多线程访问可能会出问题啊, 你怎么办, 你不能限制访问者怎么用, 访问者想在多线程去跑这个算法怎么办呢?
一些可能当时没答上来, 答得不好的:
最后
想要了解更多关于大厂面试的同学可以点赞支持一下,除此之外,我也分享一些优质资源,包括:Android学习PDF+架构视频+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容。非常适合近期有面试和想在技术道路上继续精进的朋友。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!