乐趣区

关于android:墙裂推荐2020Android阿里腾讯百度字节美团校招面试汇总

根本状况

2021 届硕士生,Android 开发岗

此文次要是 2020 年年初春招实习的面试和正式校招面试教训汇总,最终校招拿到了腾讯,百度,美团等 offer

次要包含阿里 4 面,腾讯实习 4 面和校招 4 面,字节 3 面,百度 3 面,美团 3 面

阿里

阿里面试很喜爱问源码,优化,原理,波及到的范畴很广,还是具备肯定挑战性的,以下包含阿里实习二面和校招二面,笔者都止步于二面,阿里能够去找找内推(笔者实习投递时口试做的差,原本认为挂了,但可能因为找的内推所以还是给我面试了,后续又加了一轮口试,校招时也是找的内推间接面试了没有口试)。

阿里实习一面

源码:Handler 音讯机制(具体波及到的类 & 细节);HashMap(数据结构 & put 操作具体过程,扩容工夫复杂度);ArrayMap 原理

JVM:Java 内存区域划分,堆栈的区别,哪些区域线程公有,哪些共享;栈帧,Java 办法调用时的入栈出栈操作

并发拜访:volatile 原理及作用,是否具备原子性;synchronized:润饰代码块 / 办法 / 对象的区别?(单例模式 DCL 会不会生效?);Lock 的原理

Android:Activity 生命周期(具体执行过程,波及到哪些类?);ANR(什么是 ANR?怎么监测:运行前,运行后,线上监测?)

阿里实习二面

我的项目:我的项目应用人数,有无上架商店;有无 IM 通信模块;登录模块是怎么解决的;如何让千万级别用户的 APP 用户实时晓得本人状态(APP 端 & 服务器端)

Java:synchronized 润饰办法和类有什么区别;volatile 关键字作用

JVM:内存调配;垃圾回收算法

Android:事件散发机制;音讯机制(为什么 Looper 死循环没事?怎么实现线程间通信?);操作系统层面死循环是怎么回事;死循环肯定会导致 ANR 麽?;View 绘制流程(具体原理,包含不限于绘制三大流程)

网络:HTTP 缓存

阿里校招一面

Android:有没有遇到 OOM 问题,有没有遇到内存透露问题,怎么解决;Handler 机制原理;ThreadLocal 作用及原理;Activity 启动到加载 View 过程;View 绘制过程;OKHttp 框架(1. 为什么抉择它 2. 性能 3. 外部有哪些设计模式);EventBus 框架

设计模式:用过哪些设计模式

实习:实习我的项目中遇到的难点

网络:HTTP & HTTPS 区别

其余:为什么抉择 xx 部门;加入的比赛状况

阿里校招二面

我的项目:为什么抉择 OKHTTP 框架;图片框架?(Glide);JSON 解析框架?(Gson);怎么确定技术选型;我的项目 APP 页面个数;阿里云对象存储 OSS 上传凭证怎么设计缓存,怎么加密(加密算法有哪些?)

Android:Activity 生命周期,启动通明 Activity 生命周期,按 Home 键后生命周期流程;后盾杀死 APP 后怎么复原数据;一个 APP 能够多过程吗;ListView 和 RecyclerView 区别;RecyclerView 卡顿怎么排查,RecyclerView 怎么实现多 Type,RecyclerView 的 ItemView 层级过深怎么优化;Android 多过程;怎么设计 Android 线程间通信;Handler 机制,子线程能够用 Handler 吗?ANR 原理?

Java:private protected public 关键字的用法区别;接口,抽象类区别,抽象类要不要实现接口的办法;Map 的线程平安,读多写少选哪个汇合;

网络:HTTP/HTTPS 区别;TCP 是什么,握手与挥手过程;长连贯;服务器推送怎么实现。

腾讯

腾讯面试波及到的范畴也很广,甚至问到了 C ++,也具备肯定挑战性的,以下包含腾讯实习四面和校招四面,最终拿到了测开岗位 offer,腾讯面试过程中的感觉就是很多我不太熟悉的知识点都被问到了,甚至是不晓得的知识点,但整体面试官给人的体验还不错,个别会提前打电话沟通面试工夫。

腾讯实习提前批一面

Android:四大组件是什么,轮流介绍;Fragment 是什么,与 Activity 区别;SurfaceView 与 View 区别,SurfaceView 原理;前台服务与后盾服务区别;AIDL 理解么;IPC 形式有哪些,哪种形式最快;Protocol Buffer 理解么;APP 中多过程有什么用;办法数 65536 怎么解决;View 显示过程

Java:线程同步形式;死锁是什么

JVM:内存调配形式;堆和栈的区别;GC 算法,垃圾回收;class 文件生成过程

计算机网络:什么是 HTTP,HTTP/HTTPS 区别;TCP 三次握手 四次挥手过程;TCP/UDP 区别;HTTP 是长连贯还是短连贯;HTTP 状态码;抓包工具,怎么抓包 HTTPS

设计模式:生产者,消费者是什么;命令模式

数据结构:快排及工夫复杂度多少;七大排序;二叉树原理;红黑树

腾讯实习提前批二面

C++:class 与 struct 区别

我的项目:介绍我的项目,有什么难点;比赛用了单片机,指令级是什么

Java:HashMap;ArrayList,LinkedList 用法有什么要留神的;注解介绍下;泛型中类型擦除是什么

数据结构:线段树;B+ 树

Android:OkHttp,OkHttp 应用须要留神什么;RxJava 介绍下;Activity 四种启动模式;一个 APP 怎么退出所有 Activity,如果有第三方 SDK Activity,又怎么退出

腾讯实习正式批一面

算法题:字符串中呈现频率中位数;最长公共子串问题 LCS

我的项目:OKHTTP 框架

计算机网络:TCP UDP HTTP 区别;TCP 滑动窗口;用 UDP 实现 TCP

数据库:三大范式;索引,怎么晓得命中索引

操作系统:过程间通信形式;共享内存原理

腾讯实习正式批二面

我的项目:我的项目介绍;内存透露

Android:OKHTTP 对 HTTP 与 HTTPs 之间的区别;HTTPs 加密原理;BlueboothAdapter;Activity 在 AndroidManifest.xml 文件中有哪些标记位,CLEAR_TOP 模式,singleTop 和 singleTask 别离的应用场景;Android 存储(文件,SP,数据库[具体介绍下 SQLite]);Android 虚拟机与 Java 虚拟机之间区别

Java:深拷贝 浅拷贝(内存溢出 or 垃圾回收时有什么区别?);多线程模型

数据结构:二叉树;B 树(插入 / 删除过程)

腾讯校招提前批一面

我的项目:我的项目介绍;我的项目实现的性能

网络:介绍下 HTTP 协定;HTTPS 公钥裸露怎么办;HTTP 分段上传文件怎么保障正确;HTTP 缓存

Java:过程 线程区别;子线程间通信;解决死锁的方法,怎么判断产生死锁

算法题:数组从新排序保障奇数偶数程序不变,最终使所有奇数在前,偶数在后;2 数 / 3 数之和

腾讯校招提前批二面

我的项目:我的项目梳理;图片压缩算法;Bitmap JPG 区别;断点重传,怎么动静确定范畴;断点下载;CRC 原理

设计模式:MVC 长处毛病;MVP 中的 MVC 的 C 实现在哪;单例模式的饿汉与懒汉的抉择,应用场景

网络:HTTPS 加密形式

腾讯校招正式批测开一面

Android:Crash,ANR 怎么解决

数据结构:设计世界杯 32 强对战数据结构

益智题:2 个球,一共 100 楼找到哪一层扔下来球刚好会坏

其余:介绍测开具体工作

腾讯校招正式批测开二面

我的项目:聊细节

Android:图片,语音大内存数据的性能排查,定位;Handler 内存透露问题;ART Dalvik 区别;GC 机制;CountDownLatch 原理

算法题:不应用循环,大于号,小于号等查找数组中最大值

闲聊:自我劣势

字节

字节面试比拟重视根底,包含在线写题,数据结构,Java 根底,JVM 根底,操作系统等;以下包含实习 3 面;字节实习面试是一天内走完所有技术面试流程,每一面完结后如果通过则 15min 左右就开始下一轮面试,全副为视频面试。

字节实习一面

我的项目:介绍我的项目

Java:深拷贝 / 浅拷贝,怎么实现深 - 浅拷贝,CopyonWrite;Java 内存(调配 -> 回收的具体过程)

网络:TCP 挥手,第三次不挥手会怎么样;HTTPs 加密的解释,对称 / 非对称加密

算法:数组 A,数组 B,计算 A -B;0- n 之间所有质数(能够先求所有合数)

字节实习二面

Java:线程同步问题(为什么须要同步 & 怎么实现同步)

设计模式:单例模式(动态外部类);其余设计模式简介

数据结构:排序算法,归并 / 快排(实现原理 / 均匀复杂度 / 是否提前结束 / 谁性能更优),堆排(怎么实现调整堆构造 / k 个最大的数);

算法题:给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组

字节实习三面

自我介绍:学过的专业课程;看过哪些计算机专业书

操作系统:内存调配区域(Java 层面答复,对象援用在堆和栈都有么?函数外部 new 的对象寄存在哪?);用户态 / 内核态;中断是什么

网络:计算机网络有哪几层,别离对应什么协定;IP/TCP 传输的都是什么数据;DNS 是什么,有什么作用;

百度

百度是现场面试,一共三面没有 HR 面,第三面是总监面,兼顾技术面与非技术面试,百度的面试官都比拟敌对,一面技术问的比拟细,二面重我的项目,三面是聊天居多。

百度校招一面

我的项目:我的项目介绍;我的项目中的编码标准

Android:Android 四大组件安全性;Activity 启动模式;IntentFilter 匹配规定,action 和 category 区别;Handler 阻塞为什么不卡死;事件散发机制,onTouchEvent 返回 false 解决流程,dispatchTouchEvent 返回 false 解决流程;Looper 是什么;对象池,手写对象池实现;ContentProvider 原理;sp 反对跨过程么,怎么解决跨过程,怎么实现进程同步;帧动画实现: 100 张图,200ms 显示一张,读取一张图要 400ms,怎么解决防止卡顿;Bitmap 内存复用限度条件

操作系统:线程工夫片调配原理

百度校招二面

我的项目:梳理我的项目;我的项目难点;我的项目中技术框架

算法题:手写二分法;电梯状态机设计

其余:优缺点;业余

百度校招三面

算法题:最长公共子串

Android:ART 虚拟机类加载机制;okhttp 原理;热修复原理

其余闲聊:长处毛病;大学遗憾;作为班长组织了哪些流动;长期保持的事件;业余去向

美团

美团面试是现场一天面完,技术面试一共两轮,最初有一轮 HR 面试,回顾起来仿佛问的问题不是特地多,但都比拟凋谢,聊的比拟深刻,技术一面间接关上美团 APP 聊相干页面设计实现,这种形式还是比拟新鲜的,二面则是聊我的项目比拟多,问很多我的项目中具体实现细节。

我的项目:实习我的项目;我的项目最难点;我的项目中技术抉择;阿里云对象存储 OSS 的 STS 凭证设计

Android:Lint 工具是编译期的吗,原理;美团首页设计具体实现;RecyclerView 多 Item 的难点;

设计模式:MVP MVVM 应用场景

HR:当初有什么 offer;抉择 offer 根据;聊一聊怎么解决公司内沟通问题

面试心得

面试首先个别都会有个自我介绍,能够当时筹备下 1 -2min 的自我介绍
Android 岗位面试内容较广,须要做到各方面常识都要理解,在理解的根底上一直深耕
现场面试的体验个别优于电话 or 视频面试,因为面对面交换更无效清晰
至多做一个拿的出手的我的项目,一是面试时能够聊起来,二是简历有干货,三是通过做我的项目能够相熟那些开源工具
Android 岗位个别算法题要求不高,刷完《剑指 offer》大部分就能应答了

作者:Hengtao24
链接:https://www.jianshu.com/p/7a8…
起源:简书
著作权归作者所有。商业转载请分割作者取得受权,非商业转载请注明出处。

退出移动版