最近去面试了几家外企,由于英语不过关,感觉面试起来比较吃力,不过技术方面还算可以,以下是一些常问到的技术问题:
(由于是基础题,就不付答案了。相信大家大部分是自己的,不明确的地方查一下就知道了)
第一,Java基础类
1,Collection 与 Collections 的区别,顺便会提起Collection的框架结构,以及Collections的API熟悉程度,比如sort().
2,set,List与LinkedList的区别,部分可能还会问及List里面的API的熟练程度,比如:remove(),contains()等。
3,HashMap与HashTable的区别。
4,JDK1.5的新特性,比如:范型,for each等。
5,String 与 StringBuffer的区别
6,抽象类与接口的区别,这个是最喜欢问的。。。
7,error与exception的区别,以及exception的分类
8,overLoad与orverRide的区别,OverLoad的方法是否可以改变放回值。
9,class.forName()的作用,为什么要用?
10,对象的特征。
第二,算法
1,冒泡,插入排序,递归,迭代等
第三,设计模式
1,主要是工厂模式跟单例模式,而且一般会叫你现场写一个单例模式
第四,数据库
1,主要考查你的sql功底,多张表的操作,包括left join等。
第五,开源框架
1,hibernate,只要是hibernate配置,事务,连接池等
2,spring,IOC跟AOP,可能会问你IOC的实现原理。
3,jsf,struts等标签库的使用,以及生命周期流程等
第六,其它技术
1,javascript
2,ajax
基本上是以上这些问题,希望大家补充讨论。。。。