您的位置:首页 > 职场人生

2016秋招 android面试总结

2016-10-16 19:56 183 查看
从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反射机制

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


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: