2024应届毕业生,Android春招总结,已入职小米(附面试题答案)

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注Android)
img

正文

由于劣势3,4,5,在面试时缺少亮点和深度,无法让面试官留下太深的印象。

由于优势1,2,我在聊个人经历时有很多可以说的内容,可以充分展现我的业务能力和开发基础

需要做的事

  1. 提高刷题量,增强算法能力。
  2. 在Android方面加深基础,多看面经。
  3. 持续的修改简历,突出亮点。
  4. 增加获奖经历。
  5. 复习科班基础。

过程

  • 为了提高算法能力,我刷完《剑指offer》,了解面试官出题的套路;还在LeetCode上AC了20多道Hard难度的题,在牛客上AC20多道低通过率编程题,加强手撕代码的能力。

  • 为了提高计算机基础,我复习了以下科目
  1. 计算机网络
  2. 操作系统
  3. 计算机组成原理
  4. 编译原理
  • 在网络上搜集相关面经,主要是BAT TMD NJ的Android岗位的面经,在看面经的时候我会尝试回答每个问题,看看自身掌握如何,不会的及时找到答案并弄懂。

需要资料的朋友可以私信我【资料】或者或者**【点这里】
免费领取**

  • 由于对内推不抱希望,我在牛客网上刷大量的笔试题。希望通过提高笔试能力,能尽量拿到参加面试的机会。

面经

均只有技术面

字节跳动

一面(30misn)

  1. handler原理
  2. 怎么解决handler内存泄露
  3. 四大引用
  4. 接口和抽象类区别
  5. 对MVP的理解
  6. retrofit源码
  7. java面向对象三大特性
  8. java异常机制
  9. 算法:反转链表

二面 (40misn)

  1. asynctask原理
  2. ANR原因
  3. ANR排查
  4. 怎么解决加载大图OOM的问题
  5. https过程,对称加密,非对称加密
  6. TCP和UDP区别
  7. 手撕代码:单例模式DCL,面试官问我有没有更优的,

腾讯

一面 (1h)

  1. 自我介绍
  2. 笔试题1:删除无序链表中的重复结点(能否优化)
  3. 笔试题2:先说一下二叉树的有哪些遍历方法。写一个二叉树前序遍历的非递归形式。
  4. 讲一下Java的内存。
  5. 创建一个字符串对象,这个对象分配在哪里?
  6. String str = “123” + “456”;会创建几个对象。
  7. 问了操作系统的问题,没学过,所以也忘了问了什么。
  8. 数据存储有学过吗?数据库和文件保存有什么区别?
  9. Activity有哪些启动模式?
  10. 有什么要问的?

二面 (1h)

  1. 上一轮面试做了哪2道面试题?
  2. 会哪些编程语言?
  3. 想做哪个方向?为什么?Android
  4. 对Android比较感兴趣,都学了些什么?我答了活动的启动模式、Handler。
  5. ListView源代码有看过吗?没看过。
  6. 想一下ListView应该是怎么实现的?链表?
  7. ListView滑动页面如何实现页面的复用?队列?
  8. 给你2个线程,如何产生死锁?为什么会产生死锁?
  9. 外存有一定量的数据,需要读取到内存中处理,但是内存的大小是不知道的,要求如何能够读取尽量少的次数,才能处理完全部的数据?

唯品会(一面就挂了)

一面:(1h)

  1. udp和tcp的区别
  2. 能介绍一下Android的四大组件吗?
  3. 二分法是怎么样的
  4. 线程池(词)是什么?如何打印两个线程同时完成的消息?
  5. 你了解android的View
  6. 你了解有哪些动画吗?
  7. ListView和RecycleView的区别?
  8. udp和tcp的区别?http是基于tcp还是udp
  9. 项目怎么实现刷新实时天气情况这个功能的
  10. 项目怎么实现显示本地mp3文件
  11. http和https的区别吗?你的项目你是用http还是https?
  12. 你的学习经历是怎么样的?
  13. 如果遇到你和同事出现了矛盾你会怎么办
  14. 如果经理提出的需求分析你很难实现你该怎么办?
  15. 你学习过哪一些源代码
  16. 如果debug出现问题你会如何去发现问题
  17. 有没有试过抓包?
  18. java多线程是怎么实现的?

斗鱼

一面(40misn)

  1. 线程同步(五个线程如何顺序执行)
  2. GC
  3. 内部类特点
  4. 四大引用方式
  5. 新建线程的方式(三个)
  6. arraylist和linkedlist
  7. 线程池(使用,种类,参数)
  8. hashmap
  9. 自定义VIew
  10. 性能优化(布局和代码),
  11. sp、dp和px的区别(适配问题)
  12. handler(基本原理,ThreadLocal原理和使用)
  13. 四大组件(问了生命周期和特点和基本使用)
  14. TCP和UDP
  15. HTTP建立过程

二面(50misn)

  1. View绘制
  2. 多进程(如何多进程,为什么要多进程,有什么优缺点)
  3. 架构(问了MVC,MVP,MVVM这些,还问了设计模式相关)
  4. 学习过程
  5. 项目构思过程,项目搭建过程
  6. Messager,ThreadLocal
  7. 接口和抽象类(为什么要有这两个区别,在项目中如何使用)
  8. Rxtrofit
  9. Rxjava
  10. 责任链模式
  11. 观察者模式

小米

一面(1h)

  1. 个人介绍

总结

最后对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!

这里附上上述的技术体系图相关的几十套腾讯、头条、阿里、美团等公司2021年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

相信它会给大家带来很多收获:

当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注Android)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注Android)
[外链图片转存中…(img-yqvMv7N4-1713210984021)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 24
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值