时隔一个多月,我又回来了。这段时间有很多人问我最近在干吗,面经何时写,怎么这么久没更文了等等等等。固然了,最近我一直在执行了一次我计划了近半年的跳槽。总得而言还不错。说下个人状况。我是去年九月份开始计划,十一月份开始准备,投了100+家公司,拿到了20+个面试,总共面试了四家,拿到了3个offer,周期差很少是一个月时间。java
这个面经可能不是适合全部人,毕竟此次不是一线大厂的面经。不过内容可能你看了至少会发现本身还缺少哪方面的知识点。适合人群:ios
学历通常git
技术通常的中级开发:毕业1-3年github
安卓应用层开发面试
在前面的文章中我已经谈到了如何投递简历和筛选面试和offer的,这边我就不废话了。算法
首先说一下,针对面试咱们须要会一些什么。不论是Android基础仍是Java基础以及常见的数据结构和算法,这些是无原则地必需要熟练掌握的,尤为是非计算机专业的同窗,面试官一上来确定是问你基础,要是基础表现很差很容易被扣上基础不扎实的帽子,常见的就那些,只要你平时认真思考过基本上面试是没太大问题的。数组
俗话说的好,面试造火箭,工做拧螺丝。因此,该准备的仍是要准备。有些东西长时间不看会忘,但有些东西长时间不看也不会忘。因此学习的方式很重要。好了扯远了,下面进入正题。(面试题的顺序可能不同,印象中记忆的面试题)缓存
这公司主要是作数据云的,公司规模通常。安全
面试题数据结构
1.曲面屏的适配
2.activity中应不该该有static变量
3.事件分发
4.Handler
5.APP瘦身
6.用户体验
7.service的两种启动方式和区别
8.bundle机制
9.Android 7.0特性
10.kotlin的见解
11.listview和recyclerview的区别
12.数据销毁怎么保存
上述题是同一个面试官分了2次来问个人。说实话这家公司面试顺利的不行。面试官刚上来就问题目了。WTF?自我介绍呢?当时我还有点懵,不过也瞬间反应过来了,变跟着的他的问题去回答了。面试先后不到十分钟,他就说:我对你很是满意,薪资X如何?WTF?我当时还在想,这都发生了啥。不过我说对薪资不是很满意。而后他说要不在考考你?因此我在前面说了,这些题是同一个面试官分了2次来问个人。前先后后面试了差很少1个小时。最后给了个offer。
这家公司是一个知名的教育平台,D轮融资,规模挺好,环境nice。
面试题
1.hashmap的原理
2.java 7 8 9 10的区别
3.lambda原理
4.为何java 7中不能用lambda
5.三级缓存
6.setcontentview原理
7.gilde原理
8.string和stringbuilder哪一个存储速度快
9.事件分发
10.线程
11.如何学习的。
这家公司算的上我这几家面试公司中最想去的一个把,也是惟一一个被pass的一个。不过到头来,我是基本被秒杀了。看看上面的面试题可能也知道,难度系数仍是有一点的。不过差很少能肯定的是,面试官多是java出生的。好比第一题,hashmap,问完原理以后,问了hashmap存储的是什么?hashmap内部是链表和数组,那么数组和链表是怎么存储和删除数据的。基本上,问的每一题到后面都会慢慢问到JVM的东西。JVM对于目前的我来讲,简直就是噩梦啊....因此直接over了。
一家作新零售的上市公司。
一面
1.IO
2.手写数组实现队列
3.能不能动态add同一个布局
4.Handler机制
5.手写rxjava遍历数组
6.scheme协议
7.数组扩容
8.listview和recyclerview的区别
9.service
10.线程如何作到安全
11.aop思想
12.自由发挥
13.hashmap原理
二面
1.五年的计划
2.有木有考虑转岗好比ios
三面
是什么让你坚持的写了三年的博客
问了学历,谈了产品
这家公司也是面试的时间最久的一个,前先后后2个多小时,一面的内容我也有些不会的,不过问到java的内容的时候,那个面试官明说了,java我也不知道问啥,随便问问,而后主要的仍是问了一些Android的内容。主要仍是当场手写的,这种手写的么,知道多少就手写多少了。一面二面聊的东西也不是很是多,前先后后半小时。三面的话。上来就说,我刚才去看了你的github和博客,而后就问了,是如何坚持了三年的。我谈了个人一些见解,包括后面的学历和产品之类的,我分别的都说了个人见解。最后很神奇的听他说,要不你来咱们公司作产品把。WTF?我当时都吃惊了。因此虽然技术面的通常,不过三面聊的很nice。最后也就拿到了offer。
一家C轮融资的公司,o2o平台。
面试题
1.hashmap原理
2.classloader原理
3.线程安全
4.sparearray原理(拆分包)
5.gc机制
6.gilde原理
7.rxjava
8.Ui优化
9.性能
10.瘦身
11有木有看过框架源码,而后问原理
12.单例模式
13.listview和recyclerview和Scrollview嵌套问题,以及rv和lv的区别
14.Android2个虚拟机的区别(一个5.0以前,一个5.0以后)
这家公司问的东西挺多的,遇到不会的面试官也和我说了是什么什么。主要这家公司是我早上面了C公司以后,作了1个多小时地铁去面试,感受全程困的不行。因此回答仍是比较通常。而后一面结束,二面面试官过来就说,刚才一面完了说技术开发没啥问题了,二面具体算是我对公司的一个了解。稍微问了一些东西。面完了最后就说,过会让hr发offer了。
上面的问题大多数仍是技术面。我这边稍微说下非技术面,通常非技术面试考你是沟通能力,表达方式,情商等众多方面。不过通常都会环绕公司的发展方向,产品等问题进行讨论。因此,单单技术好仍是差一点的。好比某些公司问道,从用户角度,谈谈我司的产品怎么样?因此在面试以前,最好下一下面试公司的app进行了解。若是没找到app也能够上公司官网进行了解。好比我此次面试的公司A,就没找到公司的APP,不过我去官网看了公司是干什么。
面试完了以后,要学会总结本身到底哪方面不足,致使XX公司没有拿到公司,好比我,由于JVM和数据结构薄弱,致使没拿到B公司的offer。找到了本身的不足以后,咱们就须要花时间对这方面进行弥补,不论是单纯的为了面试仍是为了之后的技术沉淀。说白了,都是为了本身好。经过此次面试,我也知道本身哪方面的不足,为了之后考虑,因此我也会抽时间对这方面进行弥补。
人生的路仍是要本身走,别人最多给你一些方向,平时但行好事,莫问前程,一步步的努力终将获得回报。但愿看完文章后,找到本身的问题所在,努力前行,给未来的本身一个感谢的机会。
掘金技术征文连接👉 juejin.im/post/5aaf2a…
更多文章请关注个人公众号: