2016秋招 android面试总结

来源:互联网 发布:网络打字员是真是假 编辑:程序博客网 时间:2024/05/17 21:46

       从8月底开始海投简历,参加各种笔试,先后面试了东华软件 CVTE 乐视 好未来 小米 4399  欢聚时代(YY)  软通动力  魅族 这么几个公司,下面分别说一下面试中的问题:

       东华软件是最开始的,是公司去学校宣讲的,感觉很水,我找的是Android,结果面试官不会Android,而且一共就一面,还是群面,问的问题都是java基础这里就不细说了。

       CVTE是9月13号面试的:

一面

1、上来没有让自我介绍,直接问最熟悉的项目说一下,然后让画出自己负责的部分项目架构图,解释一下怎么实现的    

2、项目中使用到的设计模式,除去系统实现的  

 3、面向接口编程的特点    

4、平时怎么使用泛型的,除集合以外    

5、栈的特点,手写用数组实现入栈和出栈功能    

6、java的引用  弱引用和软引用的特点和使用场景  

 7、熟悉哪些框架(我在项目中用到了volley) ,问我volley看过源码没有,volley是怎么实现的,有什么特点    

8、java多线程的使用  好像就是这些了,剩下的想不起来了,面了不到半个小时,然后说就这样,让我在边上等会儿。    等了一会儿之后,有个人让我去二面。

二面  
  1、大学期间做了多少个项目,详细说一下。  

 2、每个项目自己负责的部分,难点,画出架构图,然后对着图讲解。  

 3、java多线程    

4、平时比较熟悉的框架,在什么时候用到了,这里我又把volley讲了一遍,然后说别的不太熟  

 5、手写代码:给定3个字符串,找出3个字符串中都包含的字母的出现次数。  

  6、设计一个微波炉,有三个条件,第一是不能加热一些特殊的食品(鸡蛋,香蕉,等等),第二是加热过程中不能打开微波炉的门,第三是以后要有其他方面的扩展,然后说从程序员的角度考虑一下要设计这个产品,需要怎么实现  

 7、对自己大学几年做一个评价   剩下的想不起来了,

8、然后就说我有什么想问的,我先问面试官,让他评价一下我的面试,然后他让我先自己评价,后来他又给说了说。第二个我问了一下公司对新员工的培训,然后他给我说了一下,到此面试就结束了,然后晚上通知二面通过了, 让去参加HR面,HR面问的问题就不说了,都是谈理想,谈人生。晚上回来查结果HR也过了,本以为这么顺利就通过了三面,是不是就可以签了,结果网上一查他们公司是不直接给offer的,需要去他们公司实习一个周,通过这个周的表现来决定你是否能留下来。这就很郁闷了,因为当时候正式招聘高峰期,所以我就把实习时间推到了11月中旬。


    乐视:乐视是9月23号面试的,一次性三面全部完成  

 一面:
1、项目中负责的内容,分块描述
2、见过的图片的格式
3、.9图片底层实现(颜色渐变的界面如何通过.9图绘制)
4、图片压缩的方法
5、ImageLoader
6、即时通讯画架构图
7、数据库升级(原始数据如何保存)

二面:
1、final 关键字 和static 关键字对于类,方法 变量的修饰(他给写了个类让说出程序中的问题)
2、用以上关键字修饰的变量什么时候声明,什么时候初始化,什么时候分配内存,分配在什么地方,如果是int类型分配多少内存,如果是float类型呢,如果是Object类型呢?
3、字节码了解多少
4、java如何实现一次编译到处运行,jvm内部是如何实现的?
5、手写代码,一个方法每隔500ms执行一次自身的方法体,如果该方法已经被调用那么两一个请求将无法执行,方法体本身的执行时间是不确定的。
6、volley 存在的意义,内部干了什么事
7、ImageLoader的命中率
8、学习中的难点是什么,怎么解决

因为二面答的不好,所以以为要挂了,在等通知的时候心里还是很慌的,结果还是过了。然后三面就谈理想了。


    好未来:

一面:

本来过了笔试应该是一面的,但估计是因为过笔试的人太多了,所以他们公司就把一面改成了笔试了,然后一张试卷4个编程题。顺利通过 晚上打电话通知第二天二面


二面:

1、有特色的项目==》负责部分,框架结构,数据库设计
2、应用开发后从架构方面进行优化
3、java4种引用
4、广播的分类==》普通,系统,有序,应用内,粘性
5、Android进程间通信方式
6、线程池
7、架构模式(MVP,MVC)
8、设计模式(应用中)
9、手写算法
10、应用优化
11、java内存模式

二面过程进行的不是特别顺利,那个面试官一直揪着我的项目问,根本停不下来,差不多面了一个半小时的时间,然后让等一会儿;


三面:

三面进去还是一顿问项目,聊了好久,然后问了几个Android相关的问题

1、如何保证服务不死

2、如何实现长链接  这个答的不好,被面试官抓着不放,导致接下来的面试进行的特别尴尬

3、如何在主线程中调用子线程的handler

4、给定n个数,每个数都有9位小数,将这个数只取两个小数,使其差值小于0.01,把n个数都完成以上操作,然后把更改前的n个数加和,把更改后的n个数加和,两个和的差值也是小于0.01,编程实现。(答的也不好)

5、后面被面试官说基础不扎实,怎么怎么样,然后就结束了,让回去等通知(虽然我感觉过不了,但是竟然在国庆节前一天我在回学校的路上给我发的拒绝通知,影响了我的心情)


   小米(小米面试是第一次感觉被羞辱了)

一面:

1、介绍项目
2、使用到的框架,还知道哪些,为什么要使用
3、java进程与线程
4、静态变量和静态代码块以及构造方法的执行顺序
5、类构造器
6、静态变量赋值几次
7、Android广播
8、activity启动模式 flag使用过没
9、activity生命周期
10、JNI是什么,怎么用,写过没
11、C语言和c++熟悉吗(我说还好,但是用的不多,面试官就说那就是不会了)
12、Linux操作系统熟悉么
13、用过哪些调优工具
14、熟悉Android架构么

15、数据结构和算法熟悉吗?手写算法能写多少?

16、jvm熟悉吗?哪些部分是私有的,堆内存中的内容是私有的么?如果不是怎么可以变为私有
17、java反射机制

然后一面就挂了,剩下的面试下次聊!


0 0