今日头条,记录下秋招的一些公司的面试

2020-02-16 12:40 来源:未知

欢迎访问我的个人博客转发请注明出处:

图片 1龙珠超.jpg

转自 2016Android某公司面试题 - 享受技术带来的快乐        - 博客频道 - CSDN.NET

先做个自我介绍,本人大三狗一枚,就读的是广州一个普通的一本大学,专业是比较尴尬的电子商务(非计算机学院,连C的课程都没有就只有Java),但是一切的尴尬并没有阻挡我对Android开发的热爱,自学一年多差不多两年了,基础以及开发的技术也掌握的相对成熟了。在即将要变身大四狗的关键节点看到了腾讯爸爸暑期实习生的招聘,便刻不容缓地参加笔试,很开心顺利收到面试通知,可惜最终止步二面,以下是我此次面试的整个过程,希望对大家有所帮助。

首先,自我介绍一下,我来自广东某工业大学的大四学生,本科专业是通信工程。大二开始自学Android相关,断断续续地看书,做项目,直到真正找公司发现始终还是一个渣渣。后面自从今年8月中旬在实习的公司离职之后,一直在忙复习基础,找工作,所以很多事情都搁置了。后面发现好久没写过文章了,并在秋招中有一些个人的感受,因此想记录下秋招的一些有趣的公司的面试,大神们请轻喷哈。

2016年4月某公司面试题及面试流程。

一面的时间是11号下午2点钟,因为对酒店的位置不熟悉,所以提前了两个小时出发,下公车过马路的时候下起了小小雨,所以撑起了雨伞,这时站在我前方的一个中年女士回头看着我的雨伞,我似乎看到了她眼神中对雨伞的渴望,所以走上前去给她撑伞,她愣了一下说她不是想要撑伞,只是想到今天自己忘记带雨伞了不知该怎么办。送她走过马路的过程中,我告知她要去参加腾讯的面试,她说面试所在酒店的老板是她朋友,后来告别的时候她说祝我好运并叫我记得跟面试官说我今天运气很好哟。其实面试结束之后觉得此事很蹊跷,但也被她说中我一面运气很好,所以也很感激这位陌生的中年女士吧!

以下都是阿里系统的视频面试

图片 2手持OP3拍一面来一面的人很多,等候的会议厅里显得有点嘈杂,不过很意外的是来面试的学生中男女比例相当,更可以说女生稍稍比男生多一丢丢,看来程序媛也很努力啊!2点过几分钟,系统发短信提醒我可以面试了,腾讯的高效可见一斑,以下是正文。我:敲门,问好,深深鞠躬并双手递上简历。一面的面试官有些许腼腆,偏瘦偏黑,坐得很直,第一感觉很Nice。面试官:你好,先做个自我介绍吧。我:将自己准备了许久的自我介绍顺利地讲了一遍,面试官很认真的听并逐点看我的简历。面试官:听完自我介绍之后,问道:你是自学Android还是学校里有相关的课程。我:苦逼的我当然是自学的啦,大一的时候学校教的是Java,老师很好,也是我在大学期间觉得唯一的一个好老师了。讲自己从一开始通过看郭霖的《第一行代码》入门,到中间走了许多弯路去看了一些补习机构的教程视频,再到后来自己总结出了一个学习路线图,并开始专注于看优秀的图书和勤打代码,并且做了一些比较拿得出手的项目和维护着一个个人博客 。面试官:频频点头,似乎很同意我的学习历程并且对我目前的状态表示满意。接着问,知道Android中的ANR吗?解释一下。我:知道,ANR就是Application Not Responding ,即应用程序未响应,之所以会造成这种异常是因为Android是在主线程即UI线程中更新界面的,但是如果在UI线程中进行过多的耗时操作就会堵塞主线程从而造成ANR,具体造成ANR的原因有三个:Activity耗时操作超过5s,Broadcast Receiver 超过10s,Service超过15s。面试官:似乎很满意,接着问道,那Android中是如何避免ANR的?我:这些问题因为都是很基础的,并且面试前复习过了,所以对答如流。我说我举一种方法吧,例如AsyncTask,具体介绍了他的doInBackground和updateProgress以及postExecute三个方法的使用以及参数的类型转换,还分析了AsyncTask的缺点,就是它所维护的线程池大小为128,同一时刻只能有5个工作线程和一个缓存线程,如果耗时操作工作量巨大就会导致线程池大小不够用,这就是它的缺点,另外我还介绍了它的解决方式,就是由一个控制线程来处理AsyncTask的调用,判断线程池是否已经满了,如果满的话就停止处理。面试官:一番回答下来面试官从看着简历到一直看着我并且频频点头,似乎对我的回答十分满意,我也暗自窃喜。接着他就问除了AsyncTask之外,有用过Handler吗?具体解释一下它的实现过程。我:这种问题可以说是每次面试必问的,并且自己也研究过源码,对Looper的实现机理十分熟悉,所以又是讲了一大堆。面试官:对我的回答十分满意,并问我是不是经常看源码?我:还好,毕竟也不是什么源码都看,如果被问到没看过的就尴尬了,还是谦虚点。面试官:Android应用程序之间是通过哪些方式共享数据的?我:File,Sqlite,Content Provider,Service,BroadCast Receiver,Intent,同个Application内部的话还可以通过静态变量共享数据。面试官:点点头,这个面试官很喜欢点头。那能不能说说Content Provider的生命周期?我:感觉有点懵逼,四大组件中似乎很少接触到Content Provider的生命周期,自己也不是很确定,就说生命周期不是很懂,但是我可以说一下它的实现机理,就说了Content Provider,Content Resolver之间的使用规则,具体到程序间的URI。后来回学校之后查了一下,发现Content Provider并没有生命周期这一说法,不知道面试官是问错了还是故意挖坑给我跳的,好在没往里面跳。面试官:开始问到简历上面的项目,先问了Volley的实现机理。我:因为之前写过四篇文章来介绍Volley,所以Volley的实现机理很清楚,便给他详细的介绍了起来,具体的可以看我的这篇Volley源码分析 。面试官:你刚才对Volley的实现机理讲的十分详细,调理也很清晰,很不错,那你知道为什么线程池里面是有5个线程在循环呢?为什么不是6个7个或者8个呢?我:哎呀,这个问题倒是没有细细去想,但是当初也很奇怪为什么会定5作为全局常量呢?会不会因为5是开发者的幸运数字呢(黑人问号 :joy:),后来想了一下对面试官说,可能是因为Volley面向的网络请求是请求量比较小但是请求比较频繁的操作,所以5应该是刚好能够处理得来的,又或许5是一个经过大量的数据实验之后得到的一个相对符合的数量吧!面试官:笑了笑,其实我也不是很清楚。(尴尬

TAG标签:
版权声明:本文由美高梅网投平台发布于计算机网络,转载请注明出处:今日头条,记录下秋招的一些公司的面试