2018Android面试经历

面试中遇到的一些问题

Q1:ListView和RecyclerView的使用,就问我它们有什么区别?

Q2:既然RecyclerView在很多方面能取代ListView,Google为什么没把ListView划上一条过时的横线?

Q3:你用过MVP,那你知道Dagger2吧,介绍下吧?

Q4:HashMap的内部实现原理?

Q5:Activity生命周期,有哪些启动模式,以及应用场景?

Q6:你用过AsyncTask,那你跟我说说AsyncTask的内部实现原理?

Q7:AsyncTask内部维护了一个线程池,是串行还是并行,怎么维护的?

Q8:那你说说线程池的四种初始化吧?

Q9:你用过MD,你知道怎么定义一个Behavior吗?

Q10:RecyclerView的拖拽怎么实现的?

Q11:写一个SingTop,有哪三个条件?

Q12:一个按升序排列好的数组int[] arry = {-5,-1,0,5,9,11,13,15,22,35,46},输入一个x,int x = 31,在数据中找出和为x的两个数,例如 9 + 22 = 31,要求算法的时间复杂度为O(n);

Q13:如何向一个数据库具有int类型A,B,C,D四列的表中随机插入10000条数据?如何按升序取出A列中前10个数?

Q14:service两种启动方式有什么区别?

Q15:说说三级缓存、Handler机制 ?


如果您有多余的时间,可以聆听下我的故事

        从毕业到现在面试也就那么几家公司,单前几次都比较顺利,在面到第三家时都给到了我offer!前面两次找工作,没考虑到以后需要什么,自己的对未来的规划是什么,只要有份工作,工资符合自己的要求就行!所以在智联招聘上选好工资范围,就一顿海投,做等面试电话!

      做两快三年的Android开发,工作的任务也就是一些界面的编写,RecyclerView的简单使用,网络框架也是别人封装好的直接用,再就是集成些第三方的分享、支付什么的!技术上的提升可以说根本没有,和工作一年左右的人,比起来就多几个项目优势!所以这次出来找工作还期望15K,说起来心里很慌!有哪些原因呢?


1、小公司要求不高,自己也抱着只要能做出功能的态度

2、对行业趋势把握不准,没有未来规划(所谓混吃等死)

3、对自己的工作不感兴趣,上班有空闲时间也不会去深入学习

         再来说说这次找工作面试的一些经历和感想!这次面试大大小小面试了十多家!依我自己在简历上写的几个商城类APP的工作经验,在智联和拉钩上也只有小公司能叫我去面试!(所以说技术深度很重要)

        前面两次的由于面试没怎么准备,直接over肯定是没问题的!第一家一个小姐姐把我问得n脸懵逼(一个屌丝程序猴和妹子聊天就紧张,心跳加速,口干舌燥,说话结巴)!她首先让我自我介绍一下,可脑袋一下像短路了一样!就说:“你知道的程序员表达能力差,嗯。。。嗯。。。你看简历吧!”她直接一脸无语!


        接着她就看到我简历有(Q1)ListView和RecyclerView的使用,就问我它们有什么区别?我也就只能简单的答答RecyclerView怎么使用ListView怎么使用!然后她又问我(Q2)既然RecyclerView在很多方面能取代ListView,Google为什么没把ListView划上一条过时的横线?我当然是不知道怎么回答,然后就请教她,然后她就告诉我ListView采用的是RecyclerBin的回收机制在一些轻量级的List显示时效率更高!顿时我就服气了!

后来又问我(Q3)你用过MVP,那你知道Dagger2吧,介绍下吧?我又是一脸懵逼!这次面试就这样被个妹子给干趴了!从这回去我就开始回去看ListView和RecyclerView的区别、缓存机制、Android MVP+Retrofit+dagger2+RxAndroid框架等等!

         第二天又去一家小公司,这次是我用“不知道”回答的最多的一次!(但我从容面对这样的结果,因为自己真的很菜)面试一上来也是让我做自我介绍,由于这次做了准备,回答起来没那么难!后来他开始问我技术问题(Q4)HashMap的内部实现原理?我想了下只能说“不知道”!接下来就问我(Q5)Activity生命周期,有哪些启动模式,以及应用场景?这个还是难不倒我的!问到(Q6)你用过AsyncTask,那你跟我说说AsyncTask的内部实现原理?因为我昨晚看了下,就开始跟他说首先我说说它的出现是为了解决在子线程中做了耗时操作后需要回到UI线程去更新这样一种情景,然后就开始准备说它的四个方法(doInBackground(Params...) 、publishProgress(Progress...)、onProgressUpdate(Progress...)、onPostExecute(Result)),他立刻就打断我了,说我问的是内部原理,(Q7)内部维护了一个线程池,是串行还是并行,怎么维护的?这一问,我又是一脸懵逼,只能说“不知道”!他也很无奈,又问(Q8那你说说线程池的四种初始化吧?我的第一反应是看都没看过,一句“不知道”又让他无语了!此时的我死猪已经不怕开水烫了!Q9你用过MD,你知道怎么定义一个Behavior吗?“不知道”Q10RecyclerView的拖拽怎么实现的?“不知道”!最后一曲凉凉送给自己!

凉凉

     接下来的几家公司都是创业型的小公司,面试的人都是一些不懂Android开发的或者是会一点点!首先上来就是自我介绍,这我都说了好多遍了,我15年毕业于哪里哪里,从毕业一直到现在从事的是Android开发的工作,做过什么什么类型的项目!大学学的是软件工程,学过Android、计算机网络、嵌入式、数据库、C#等等!(一顿操作猛如虎,哈哈。。。)但是这些创业型的小公司都要求你有能独立完成APP的能力,然后就跟你说什么公司背景有多牛呀,有期权股份呀,我们团队怎么优秀,这个平台能提升你很多能力呀,但是我们刚开始呀不会给你开太高的工资,但我们年终业绩好的话可以给你发4~6个月薪资给你做奖金!可能在这期间要加加班呀什么的!

       在这些中有一家都面试到了和项目经理谈了,自我感觉和技术总结聊得很不错,和项目经理也谈了自己未来的规划,先从Android入手技术深入,然后再自学H5前端,再像java后台靠拢做一个全栈工程师!项目经理也说你过来我们这有很好java后台资源,而且Android会交給一个人来做,未来业务发展也会加入H5,我们这能给你提供这样的一个平台!最后在某些方面我们的目标达成一致了,行先这样,我们再商量下,你回去等通知吧!结果我回去了,加了技术总监的微信,傻傻等了一天,啥也没等来!(忠告:基本叫你回去等通知的都是没戏!)

当然这些公司中也有向我抛出橄榄枝的,有一家给我试用8k(不交社保),转正10K,大小周!一不交社保,二是大小周,三是那没我想要的,我思来想去,辗转反侧,以不能把自己贱卖为由,我果断谢绝了!

       比起套路,我更喜欢那些能直白告诉我结果的人!在去一家稍微大点的公司,首轮就是笔试!我笔试有一道算法题和数据库的题做不出,当时就知道这次没戏了!但很感谢面试我的那哥们,和我一样15年毕业的,但很牛逼!他拿着我的笔试答卷,Q11首先是写一个SingTop,那哥们就问我,单例要注意些什么?我首先回答的到的同步问题,再说构造方法私有,可我忘了一点静态调用!那哥们就给我一条条理出来1、构造函数私有  2、含有一个该类的静态私有对象  3、有一个静态的公有的函数用于创建或获取它本身的静态私有对象  4、其次才是考虑线程同步!Q12一个按升序排列好的数组int[] arry = {-5,-1,0,5,9,11,13,15,22,35,46},输入一个x,int x = 31,在数据中找出和为x的两个数,例如 9 + 22 = 31,要求算法的时间复杂度为O(n);                                              

我给出的答案是:                                                                                                                         

1、先用二分法排除比x大的数,得到pos                                                                                          

2、再从0到pos 通过两层for循环通过一个数与剩下的所有数来相加,等于x的时候break循环           

那哥们就开始给我分析,首先第1点想法就是错的,应为给出的数组中有负数,负数+正数有可能得到中间的那个数,再则它这靠得是一个双向逼近的算法!接下来是一个数据库题目Q13如何向一个数据库具有int类型A,B,C,D四列的表中随机插入10000条数据?如何按升序取出A列中前10个数?这道题我没答,我以为考的是数据库操作的基本语法!后来那哥们慢慢跟我分析这道题的考点在哪?他说:“这些语法我也不记得,但是像我们这样具有两年多工作经验的人百度一下也是能做得出的,但是这里考的不是基本语法,数据库其实也就是一个文件,一个具有固定封装特定语法操作的文件,既然是文件读写就要考虑到效率问题!在数据库中提高效率用到什么,是事务!如果一条条插入,其实每次插入都会维持一个事务,也就相当于文件的打开和关闭,10000次的打开和关闭是很消耗性能的,所以要在插入前使用BEGIN TRANSACTION开启事务,再10000条数据插入完成时用END TRANSACTION结束事务,这样就相对于文件只打开了一次,10000条批量操作完后,再关闭文件!”下面一题是Q14service两种启动方式有什么区别?我回答得很简单!他就直接说“面试这笔试也是很重要的一部分,简历大家可以随便写,但是一些技术水平在笔试这是有所体现的,所以在我这笔试这关是没有通过的!”这个时候我挺服气的,毕竟是自己准备不好。后来那哥们就跟我说:“这面试题该背的该记得还是要记,花个两三天或者一周去准备,对自己多要一两K也是很值得的,所以该辛苦的还是要辛苦下!”我挺感谢这位哥们的,也挺喜欢和这样率直随意的人打交道!

       最后经过两个星期的面试,找了一家符合自己发展方向做智能硬件的公司!经过这段时间的面试,懂得了技术深度的重要性,还有职业规划的重要性!目前个人认为纯App开发很容易被取代,我个人的职业规划1、以Android技术为基础深入,再学前端,再扩展到Java后台,做到一个全栈工程师  2、向Android智能硬件,NDK开发转型,因为我大学搞过嵌入式,有些基础,这一行门槛稍微高些不容易被取代!目前来说自己是打算朝着第二点去发展了!


感谢您陪同我一起进步!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,185评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,445评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,684评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,564评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,681评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,874评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,025评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,761评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,217评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,545评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,694评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,351评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,988评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,778评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,007评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,427评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,580评论 2 349

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,810评论 25 707
  • Java中的String类可以被继承么? 答:不能,因为它是一个final类,同样的还有Integer,Float...
    gyymz1993阅读 3,970评论 2 104
  • 决定带暖小假期回老家,婆婆委婉的表示了一下:能不能自己回,暖在家就当你出差了。我还没说话,暖爷爷说:她回家就是...
    小猪天堂阅读 522评论 4 2
  • 来!坐下来我们聊聊! 好久不见,你好久没喊我出来聊天,我以为你已经忘记我。其实你要是把我遗忘了,我倒是很开心的,也...
    麦子飞呀飞阅读 206评论 0 0
  • 下午接黄雅宁时看着她比较兴奋,原来是调组后老师又让她当组长。晚上和她交流时告诉她,不能再像以前那样看到同学...
    黄雅宁爸爸阅读 160评论 0 0