本帖最后由 常老师 于 2013-11-30 13:29 编辑
黑马android19期柏同学分享的面试感受:
面试时常问的一些问题:
1.你在上一家公司的工作职责?在项目中负责哪些模块?
2.你为什么离开上一家公司?
如同超哥所建议的那样,说出一个面试公司不存在的而上一家公司有的问题.
3.你的上一份工作月薪是多少?
这个如何回答,大家都懂的,说低了很可能会被压工资的.
4.你住在哪里?
公司在哪,我就说我住在公司附近或者公司所在的区,前程无忧或智联招聘上的简历不要写明自己住在哪个区.
5.来我们公司面试之前,你面试了几家公司?
个人感觉说三四家就可以了,不要告诉面试官你已经面试了好多家公司,可以骗面试官你进了某几家公司的复试.
6.你期望的月薪?
如果你必须自己说出具体数目,请不要说一个宽泛的范围,那样你将只能得到最低限度的数字。
7.你有什么想问公司的?
问一下能为自己加分的问题,尽量让面试官觉得你很有上进心,对面试的职位非常感兴趣等等.
技术类问题:
都是根据我的简历上写的项目/技术点来问的,AsyncTask异步任务机制以及如何停止异步任务,SQLite数据库,Json与Xml各自的优缺点等等.
深圳微普特科技公司面试题:
1.&与&&的区别?
&是非短路与
&&是短路与
2.try catch的finally块中的代码,return的情况下会执行吗?如果会,是在return之前还是之后执行?
finally块中的代码只有在exit(0);时才不会被执行,遇到return照样执行.
★finally块执行之前代码执行到return了,那么会先执行完finally块中的代码(finally块之后的代码不会再执行了),再执行return.
3.什么是死锁?原因是?必要条件是什么?
死锁
多线程同步的时候, 如果同步代码嵌套, 使用相同锁, 就有可能出现死锁
死锁的前提:
嵌套使用同步代码块,双线程或多线程并发执行时,因此尽量不要嵌套使用同步代码块.
4.写出4种sql语句(增删改查)
5,ArrayList与vector的区别? HashMap与HashTable的区别?
Collection------------------------------一次存一个对象, 单列集合
List 可重复, 有索引
ArrayList 数组实现, 查找快
LinkedList 链表实现, 增删快
Vector 数组实现, 原理与ArrayList相同,但线程安全
Set 不可重复, 没索引
HashSet 使用哈希算法去重复, 效率高, 但元素无序
TreeSet 使用二叉树算法排序, 可以指定元素的存储顺序
LinkedHashSet HashSet的子类,原理相同, 除了去重复之外还能保留存储顺序
Map-------------------------------------一次存两个对象, 键值对
HashMap 使用哈希算法对键去重复, 效率高, 但无序
TreeMap 使用二叉树算法排序, 可以自定义顺序
LinkedHashMap HashMap的子类,使用哈希算法去重复, 并且保留存储顺序
Hashtable 类似HashMap,使用哈希算法对键去重复,线程安全, 效率略低, 不允许null键和null值
Properties Hashtable的子类,使用哈希算法,用来读写配置文件
6.UML常见的图形样式,常见的几种关系,
7.Activity和Service之间如何传递数据?
8.数组有没有length()方法?String有没有?
int Array.getLength(arr)
String -- int length()
File -- long length() //返回此File实例所表示的文件的长度
因此,数组没有length()方法,String的实例有length()方法,且返回值类型是int.
9.static方法中能否调用非static方法?
★静态方法只能访问静态成员,不能访问非静态成员,不能调用非静态方法,而非静态方法可以调用静态方法.
静态方法中不可以写this,super关键字
主方法是静态的
10.抽象类与接口之间的区别?
11.面向对象思想具有哪些特征?
将功能封装进对象,强调具备了功能的对象.
面向对象可以将复杂的事情简单化,将程序员从执行者转换成了指挥者.
|--封装:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式.
|--封装的好处:将变化隔离/便于使用/提高重用性/提高安全性。
|--封装的原则:将不需要对外提供的内容都隐藏起来。把属性都隐藏,提供公共方法对其访问。
|--继承
继承的出现提高了代码的复用性。
继承的出现让类与类之间产生了关系,提供了多态的前提。
|--多态
12.String类能否被继承?
13.什么是进程?什么是线程?描述进程与线程的区别.
进程
进程是一个执行中的程序.
线程
线程是程序执行的一条路径, 一个进程中可以包含多条线程
多线程并发执行可以提高程序的效率, 可以同时完成多项工作
14.StringBuilder和StringBuffer与String的区别
String是常量, 一旦创建对象就不会被改变, 所有的方法都不会改变原有字符串的值
StringBuilder和StringBuffer都是可变的字符序列, 其对象的内容是可以改变的
15.StringBuilder和StringBuffer的区别
StringBuffer是较早出现的一个类, 其中所有方法都是同步的, 线程安全, 但效率略低
在JDK5之后出现了StringBuilder类, 该类中的方法没有使用同步, 效率高. 单线程的程序使用这个类更好.
16.Json在哪些方面优于xml? (Json比Xml 体积小,传输快,易解析,易与JS交互)
1.解码难度方面,XML的解析得考虑子节点父节点,让人头昏眼花,而JSON的解析难度几乎为0;
2.数据体积方面,JSON比XML数据的体积小,传递的速度更快些。
3.JSON与JavaScript的交互更加方便,更容易解析处理,更好的数据交互。
4.传输速度方面,JSON的速度要远远快于XML。
17.ListView中的图片怎么做优化处理?
|
|