阿里巴巴

299人关注 关注 3398人分享

JAVA工程师 面试经验( 杭州 ) - 阿里巴巴
发布时间: 2017-10-10 13:40:28 来源:职朋网友分享
面试过程:

笔试过后没几天收到了电话面试,问了非常多的问题,基本涵盖了所有Java基础知识、数据结构、算法、操作系统等等等等

面试官问的面试题:

阿里巴巴JAVA工程师面试题

1、 自我介绍。
我用了5、6分钟的时间,感觉自己太啰嗦了,自我介绍还是该简短一点。

2、 好了,我就按我的计划来面试吧,我们先从java基础只是开始,请你说一下java中的基本数据类型。
3、 基本数据类型和包装类有什么区别?比如int和Integer有什么区别?
4、 Integer最大值是多少?如果Integer达到最大值后再+1得到什么?
5、 Int a=10 == new Integer(10)?
new Integer(10).equals(10)?

new Integer(10).equals(new Integer(10))?

new Integer(10)==new Integer(10)?

new Boolean(true)==new Boolean(true)?

new String(“abc”)==new String(“abc”)?

这里真的要把我给问吐了……

补充:还问了,为什么new Integer(10).equals(10)结果是true?

6、 实现字符串拼接的方式有哪些?使用 + 和 调用StringBuffer对象的append()过程中分别产生了几个对象?如”a”+”b”+”c”和(new StringBuffer(“a”).append(“b”)).append(“c”)?
7、 字符串常量池是在java虚拟机中的哪个区域?
8、 Java虚拟机的结构是怎样的?或者说由哪些部分组成?
9、 当一个字符串不再被使用的时候会被垃圾回收机制给回收掉吗?
9(2)、抽象类和接口的区别?
9(3)、如何计算两个Date对象相差的天数?
10、 实现多线程有哪些方式?
11、 问你个算法的问题,给你一副我已经打乱过的扑克牌,去掉大小王,请你设计一个算法让扑克牌恢复到出厂顺序。
尬了几秒后他说“你可以说一下你的思路”,我就说“首先想到的是用排序算法去进行排序”,他给我提示“这本质上是一个排序问题没错,那你能不能考虑用一种结构去简化它”,于是我回答了一个创建一个4行13列的数组,将每张牌填到对应的位置,填完后就可以恢复到出场的顺序了。

12、 还是这个问题,如果不知道有几副牌,该怎么去设计?
13、 回到本质,把这视为一个排序问题,你来说一下这个排序,4花色各13张牌用快速排序的话该设置几个变量?
14、 Arraylist和linklist有什么区别?随机读取的话哪个更快?进行写操作哪个更快?
15、 刚才你在自我介绍中说你用原生jsp和servlet写过一个小的web应用,那么请你说一下用户发送一个请求,到用户收到请求中都是经过了哪些过程?
16、 Servlet中有比较重要的几个对象比如request、response,请你说一下从用户发出请求开始,request对象的产生过程?
17、 再问你一下设计模式相关的吧,请你介绍一下观察者模式?或者举个观察者模式的例子吧。
18、 再问你数据库的内容,给定一张表,有用户id,手机号,用户名等字段,其中一个手机号可以对应多个用户名,用户名可重复,问你如何选出注册了多个用户的手机号?
19、 如何选出给定手机号注册过的用户名?
其实他给的表信息表达不是很明确,但好在我还是有思路的,大体上回答了上来,然后第二个数据库问题他说需要用到 group by xxx compact 去进行连接,但我确实没用过这东西。

20、问题问完了,你还有其他什么想问的吗?

查看面试题参考答案>>

面试相关细节(职业圈独家调查):

你是通过何种渠道获得这次面试机会的?
答:校园招聘
整个面试花费了多长时间?(从接到面试消息到得到结果)
答:5天
面试形式包括哪些?
答:电话面试 职业技能测试 人格测试
你觉得这次面试的难度如何?
答:困难
你对这次面试的整体感觉怎么样?
答:不好
这次面试的结果如何?
答:面试未得到工作

赞一下(3) 踩一下

以上信息仅代表发布者自己的观点,由于在职时间、职位以及个体本身的影响,和公司整体情况可能会有偏差,仅供参考!

评论

还需查看阿里巴巴 更多信息?

相关公司面试经验