Android开发Android技术知识Android开发

拿到Offer入职后,我记录了阿里、头条、快手、OPPO等一线互

2020-08-12  本文已影响0人  蓝精灵8091

去年年末的时候毫无准备的情况下也参加了几家一线互联网公司的面试,包括阿里、头条、快手、趣头条、BIGO、讯飞、OPPO,也熙熙攘攘拿了几个 offer,最终选取了其中一家公司进行入职。

每次面试后,其实也有进行面试题的一些收集和总结,确实,面试其实就是一次查漏补缺的过程。本着对公司负责的态度,这里就不说面试题来自哪家公司了。不过还是要把记录下来的这些真题分享给大家。

另外,面试题一般都是基础 && 项目两部分结合,而且还要看面试官当时对你的准备,所以面试真题虽然「真」,但却仅仅只能作为大家准备面试的一个大纲吧。

当然,有些题目没记录完全,有些题目也出现多家公司提问,这里就不重复了。

Java 基础部分

基本这些公司都会问到相关基础,所以,一般来说基础的准备是必要并且通用的,所以这部分真的很重要。

一般来说,这三个东西基本在面试中 70% 会被问到,而问的方向也不太一样。比如初级的问法是讲讲它们之前的区别,这个我想没什么难度,大多数人还是知道主要核心区别是并发上的处理。此外,内部数据结构的实现、扩容、存取操作这些问题应该是很老生常谈了,这并没有什么好说的,大多数人也都知道。稍微问的深一点的可能会在下面这些点上出问题。哈希碰撞,哈希计算,哈希映射,为什么是头插法,扩容为什么是 2 的幂次等这样的问题。

这个问题被问频率不在 HashMap 之下,因为并发编程,真的很重要。能问到这几个点的方式真的是太多了,我们能发挥的空间也同样很大。CAS 的 ABA 问题?上面几个东西的特性?使用场景?大概我不用再例举了吧?对了,我多次被问到的一个问题是:synchronized 修饰实例方法和修饰静态方法有啥不一样。

这三个问题大概出现概率 40%,基本只需要看我每日一问系列的推文就差不多了吧,希望更清楚明白的可以直接看《深入理解 Java 虚拟机》。当你讲到分代回收算法的时候,不免会被追问到新生对象是怎么从年轻代到老年代的,以及可以作为 root 结点的对象有哪些两个问题。

四大引用面试出现概率比我想象中要高,我原本以为就强引用、软引用、弱引用、虚引用这四个玩意儿没啥可讲的。实际上也确实没啥好讲的,稍微问的深一些的面试官会和内存泄漏检测原理以及垃圾回收糅杂在一起。

Java 泛型还是会在面试中出现的,不过几率不是很高,大概是因为我简历中有提到泛型擦除相关的东西。所以会被问到泛型、泛型擦除、通配符相关的东西。不过这个东西,不应该是为了应付面试,实际开发中真的很重要。

这个问题讲真,我也只懂一点皮毛,并且当时回答不是很全面,出现概率的话,不是很高吧。

老生常谈的问题,没啥好说的,实际上这次社招面试也只遇到了两次。比较喜欢追根溯源的面试官可能会对这个 finalize 有点执念,一定希望搞清楚,这玩意儿我们是不是可以真的搞点黑科技骚操作。

没想到还被问了一次这个,这玩意儿给我的感觉就是随时都在用,但真要较真,还真不能一口气把所有区别都信手拈来。

大多数 Android 应用开发并接触不到很多并发相关的东西,不过这玩意儿还是在面试中挺容易出现的。

计算机网络部分

计算机网络部分还是挺容易考察的,不过考察的点不会那么深入。通常来说也就是这些问题:

Android 部分

Android 很广,所以这里只是简单说下有些什么问题。这个的话其实真的 70% 问题出自你的简历。

算法

HR 面

面试之外

上面说地都是一些硬实力,经过这一次的被动面试经历,下面简单说些自己在面试过程中总结的一些面试之外需要注意的东西:

一定不要裸辞

如果是裸辞找工作,HR 一般都会问什么时候离职的。如果手里没有 Offer,就很被动了,很有可能被压薪资。主动权一定要掌握在自己手中。

选择大于努力

即使很努力如果方向错了就是浪费时间,就像我选择了小程序就是个错误(大前端坑太多,入坑需谨慎)。我的建议是多深入研究一些以不变应万变的技能。

学历与履历

虽然说能力很重要,但学历是敲门砖(HR 就看这个)。如果连面试机会都没有,还怎么谈然后?如果学历不突出有很好的大厂履历也很不错,貌似是个蛋生鸡,鸡生蛋的问题。

充分准备

一些基础知识和理论肯定是要背的,要理解的背,用自己的语言总结一下背下来。

虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,我能明显感觉到国庆后多了很多高级职位,所以努力让自己成为高级工程师才是最重要的。

好了,希望对大家有所帮助。

最后在这里放上相关的我搜集整理的24套腾讯、字节跳动、阿里、百度2019-2020面试真题解析,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。

还有 高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

点击:Android架构视频+BAT面试专题PDF+学习笔记即可获取!!

【面试PDF】

最后祝大家面试加油!

上一篇 下一篇

猜你喜欢

热点阅读