2021年最新Android面试精讲,系列篇

# 华为四面(3次技术面+HR面) **一面(1hour)** * 自我介绍 * 项目介绍,技术点相关。 * C++和Java区别,GC * 线程相关,Runnable和Thread的区别。 * 线程池 * synchronized,volatile * 继承相关,多重继承和接口 * 网络编程 * UPD,TCP区别 * 最大的优点 * 最大的缺点 * 算法,二叉树中序遍历, > 早上状态很差,简单问题也会卡壳,希望大家还是能够选择自己状态好的时间点面试……。 **二面(40mins)** * 自我介绍 * camera 硬件有哪些引脚。 * 问渲染管线主要有哪几个阶段? * Android的数据存储方式等等。 * 说说mvc模式的原理,它在android中的运用。 * 谈谈你的工作经历,聊聊你的职业规划等。 * 问了一下,java有几大基础数据类型。 * 问了Activity启动的几种模式,强引用、软引用、弱引用、虚引用使用。 * 还问了我做过的App上有一个实现的自定义View问了下实现的思路。 * 又问了自定义View,三个不同的构造函数的各自作用。 * 问Scoket和Http最大的区别是什么? > 华为面试安排非常紧张,但是反馈效率特别高,一二面结束马上会短信通知是否通过。然后隔天直接三面,流程走的非常快。 **三面(40mins)** * C/C++基础:inline和define的区别; * volatile的作用,应用在哪些地方,为什么不是所有的变量都用volatile * static变量的特点 * 操作系统:线程和进程,怎么实现线程的同步 * 数据结构:对什么排序比较熟悉;二分法查找 * 现场写程序:一句代码实现,判断一个int类型的数是否是2的幂。2进制,位运算a&(a-1) * 做软件测试什么能力比较重要? * 白盒测试和黑盒测试的区别。 * 什么是UT? * 问了关于规范、扩展、回调,父类的静态方法能否被子类重写等问题 * 冒泡排序算法。 * 虚拟机原理、内存回收机制等。 * 说说对华为的了解 * 为什么离职?到华为会不会不习惯? **HR面(20mins)** * 为什么离职 * 有没有职业规划 * 对公司未来的展望 * 以前公司的薪资待遇 * 期待的薪资 > HR面还好,感觉都是一些常见的问题,没什么很刁钻的问题。 ### 最后 **要想成为高级安卓工程师,必须掌握许多基础的知识。**在工作中,这些原理可以极大的帮助我们理解技术,在面试中,更是可以帮助我们应对大厂面试官的刁难。 * * * ![](http://www.icode9.com/i/li/?n=2&i=images/20210706/1625574593392177.jpg) ![](http://www.icode9.com/i/li/?n=2&i=images/20210706/1625574593627817.jpg) **【Android核心高级技术PDF文档,BAT大厂面试真题解析】点击:[Android架构视频+BAT面试专题PDF+学习笔记](https://docs.qq.com/doc/DSkNLaERkbnFoS0ZF)即可获取!**
上一篇:理解 volatile 关键字


下一篇:Java日常练习题