8月初收到中软国际公司的面试通知,小做准备后去到软件园面试。面试结果第一轮通过,由于当天HR不在约第二周再次进行复试,后续觉得太远了..难得再次过去 此次面试就作罢 ..
面试时首先做了一套JAVA面试题,从题来看 大多都是网上能够找到答案的,在此总结一下 希望在以后的面试过程中遇到能够搞定。
1 . ArrayList与LinkedList比较(数据结构特性与数据存储方面谈)
ArrayList采用数组形式保存数据,支持随机访问其中元素,查询的速度较快 保存对象时按照顺序连续保存,当从前面或者从中间位置进行数据插入时 需要将后当前位置的数据进行后移,消耗时间较多。如果是从最后添加数据时ArrayList操作速度也较快
ArrayList的初始空间为10,当新增元素时会拷贝出一个新的数组空间(Arrays.copyOf()) ,ArrayList在使用过程中需要在创建时对空间大小进行申明,减少在后续的使用过程中 数据动态增长带来的资源开销。 数组动态增长过程中每次增加大小为(oldCapacity * 3)/2 + 1;
LinkedList基于双向链表结构,特点是查询效率低,增删效率较高,适用于增删动作比较频繁,查询动作较少的集合。当在进行查询时 需要从链表一端开始沿着连接一个一个元素的查找,直到查找到为止 所以时间花费较多 而进行插入时只需要改变插入位置前后两个元素的关系即可
1.2 HashMap与HashTable比较(数据结构特性与数据存储方面谈) ?
2.1 overload与override的区别
2.2 静态代码块与静态成员,构造方法,普通方法初始化顺序
2.3 Final修饰方法,修饰类等
3.1 如何创建同步方法
3.2 同步锁的如何实现,。。。
3.3 描述多线程的各个状态,还有各状态之间的转换
4.1 字符流与字节流转换
5.1 通信的流程 (不太明白)
5.2 scoket原理
理论题 (30)分编写伪代码
当从文件中读入数据,数据格式如下 张明,50 xxx 69 张明 98 要求将数据读入后统计重复的数据,并记录重复的次数,并按顺序进行排序输出 如 1 。张明 2 。李白 sql题 40分 销量表 表中数据结构如下姓名 销量 月份
输出格式为 一月 二月 三月 四月 xx 343 34 434 43面试时面试的时候都是依托于简历,比如开发过的项目,在项目中负责的部分,然后使用到的项目
然后进行介绍,他抽取部分功能进行问,比如 使用的什么技术,是用的第三方包 还是怎样?第三方包的名字是怎样 面试官视乎注重对于文档的编写能力,在问的过程中有询问过几次 还有就是问 面向对象的特点是什么 听完这个哥和面试的两个人都会心的一笑,然后我脱口而出封装,继承,多态 然后又问你对面向对象的理解是什么 随便瞎扯了一下,但是我扯到了开闭原则,我解释成新增打开..面试官的给我纠正了是针对扩展...汗颜阿 然后又是问你对多态的理解,多态的好处是什么Aaarylist与LinkedList 做对比,问道数据结构,问道底层的实现基于什么结构,为什么会有这种特性(建议提前认真的看下这个部分)
List与set对比 回答时说到set不能存放重复的值,然后问道为什么set不能,他通过什么判断 通过eques判断,重写compare接口的比较方法JSP的九个隐式对象是什么
foreach 循环中如果对list进行remove操作,会报什么错,为什么会报这个错
多线程的问题(由于我说平时工作中没有使用过 所以就没有详问)
流的问题 常用的流的父类 , 就是在使用缓冲的时候应该注意什么 Classforname("") 的作用是什么 ,使用到什么技术 显示的加载一个类,使用到反射hibernate与ibatis的对比
hibernate bean对象的生命周期sturts 处理流程
常用xml解析有哪几种,各有什么不同(jdom 将所有信息加载到内存中,sax 基于节点读取,dom4j 综合两种实现) spring ioc..简单介绍 还有是基于哪种技术的实现 反射 spring aop aop原理,还有就是通过什么技术实现 动态代理 与反射 spring bean 对象的生命周期 spring beanfactory 与 applicationcontext的关系 项目中的事务是怎么控制的,事务控制是在哪一层(针对自己项目) spring 框架中使用到了什么模式 (装饰者模式)设计模式有什么了解(当时以自己的项目中例子举例 说到了 工厂模式,单例模式,命令模式)
然后谈到了 观察者模式 ,问道 观察者模式在原生的API中什么地方有使用,swing中的事件 有使用 观察者模式 适合用于什么场景 具有一对多关系的地方最后问了个未来三年的计划
面试总结 面试过程中也暴露出对框架底层研究不够细致,还有就是多线程与流的的知识点方面了解不够深入 需要以后加强,总的来说 面试问的也不是太难,没有问sql优化 与其他一些刁钻的问题 整体来说面试的过程还是很愉快,在面试最后还向面试官请教了一下面试题中最后一道sql题,他也很热心的做出 了进行了解答。最后他说他木有看过我的面试题,他说网上有答案 没什么意义 ...