音视频开发进阶指南,最新大厂 Android 校招面试经验汇总
一面(1 小时 14 分)
主要问 java,以及虚拟机,问了一点 android
1.实习项目有关的介绍以及问题回答 2.反射与代理的区别,动态代理,静态代理,二者的区别,以及代理模式的 UML 图 3.字节码技术 4.虚拟机的双亲委派,以及好处 5.虚拟机栈的作用,以及什么情况下会发送 Stack Overflow6.谁能做 GCRoot,为什么计数法不如可达性好 7.为什么要分新生代和老年代,如何区分 8.GC 算法都介绍一下 9.类加载的过程,方法区中存的是什么,类型信息都包括什么,如何判断两个 Class 是否相等。10.HashMap 的 put 方法讲一下,讲一下如何扩容,讲一下一个类作为 HashMap,要实现哪些方法,equals 和 hashCode 有什么区别和联系 11.消息机制讲一下,讲一下 ThreadLoacal,讲一下 Handler 处理信息有什么方法(除了 handleMessage 还有什么),MessageQueue 是否有长度限制,android 中 Message 多不多?12.Activity A 到 Activity B 跳转的一个生命周期的过程 13.Activity A(standard 模式)跳转到 B(单例模式),B 再跳转到 A,此时返回,会出现什么情况 14.InVisible 和 Gone 的区别,Gone 和 ViewStub 的区别 15.字符串第一次出现一个的字符
二面(34 分)
计算机网络相关
1.osi 七层架构,物理层做什么的 2.输入网址之后发生的一些列事情 3.DNS 用了什么协议,具体是怎么做的 4.TCP 的三次握手,以及流量控制 5.HTTP 报文里有什么 6.HTTP 与 HTTPS 有什么区别,加密算法是什么 7.HTTP 的响应码有哪些?8.get 与 post 的区别 9.两个有序数组,找到中位数
三面(50 分钟)
深入 android 方面以及实习经历
1.实习项目有关(包括一些具体实现,以及一些关键问题)2.LayoutManager 的作用 3.RecyclerView 用的多么有哪些了解,如何去实现双层瀑布 4.如何去设计一个 SDK(很多细节的问题)5.扑克牌,抽五张是同花的概率,抽五张是顺子的概率 6.RN 以及 Redux 的了解,好处,以及使用,以及工作中对于 android 和 RN 的比重 7.单例模式的好处,那么什么时候不去用单例呢?8.SP 的内部实现了解么?如何实现的序列化 9.了解注入么?
一些建议
建议题主到拉勾网、内推网或者其它招聘网站看看各个公司对一个 Android 开发工程师的招聘要求,你会发现一些共同的特点,抛开对学历工作经验的限制,我总结一下:
1.扎实的 Java 基础;
2.熟练使用 Android 的各个组件;
3.熟悉 Android 网络编程;
4.熟练使用 Git/svn 版本管理软件;
5.具有良好的沟通协调能力和团队意识
6.良好的学习和抗压能力
7.良好的撰写文档的能力;
8.做过 Android 性能优化
9.握至少一门数据库语言;
10.熟悉设计模式;
11.熟悉 Android 的单元测试
12.使用过流行的开源框架;
13.熟悉 jNi 编程;
14.有上架应用加分
15.有 GIthub 的加分
16.有个人博客的加分
17.写过框架的加分
虽然很多公司在招聘 Androld 开发的时候总是说要求都很简单:“能写应用就行“,但是你会发现只有具备上述十几条之中半数以上的特征你才能在面试时轻松过关网上的资料很多,想要找到工作还是把基础打扎实吧。如何打好基础呢?Android 架构师筑基必备技能有哪些呢?看一下思维脑图:
架构师筑基包括哪些内容
我花了将近半个月时间将:深入 Java 泛型.、注解深入浅出、并发编程.、数据传输与序列化、Java 虚拟机原理、反射与类加载、高效 IO、Kotlin 项目实战等等 Android 架构师筑基必备技能整合成了一套系统知识笔记 PDF,相信看完这份文档,你将会对这些 Android 架构师筑基必备技能有着更深入、更系统的理解。
最后
**要想成为高级安卓工程师,必须掌握许多基础的知识。**在工作中,这些原理可以极大的帮助我们理解技术,在面试中,更是可以帮助我们应对大厂面试官的刁难。
【Android 核心高级技术 PDF 文档,BAT 大厂面试真题解析】点击:Android架构视频+BAT面试专题PDF+学习笔记即可获取!
评论