搜狗2015校园招聘javaproject师面经

本文回顾了一次面试经历,详细分析了在面试过程中遇到的技术问题,包括未能解答的选择题、线程编程方法、非线程安全的collections、快排代码、HashMap的HashCode获取、对并发知识的了解不足以及对Java设计模式的认知局限。文章强调了深入理解并发机制、熟练掌握Java基础知识的重要性。

面试时看到了我的笔试题。真是慘不忍睹啊。

1. 问回去有没有研究一下笔试题

木有,果断后面悲剧了


2. 解释一下笔试的一道选择题:

下列哪种操作可能带来死锁?

A: lock(m1) lock(m2) unlock(m1) unlock(m2) 

B: lock(m1) lock(m2) unlock(m2) lock(m2) unlock(m1) unlock(m2) 

C: lock(m1) lock(m2) unlock(m1) lock(m1) unlock(m2) unlock(m1) 

D: lock(m1) lock(m2) unlock(m1) unlock(m2) lock(m1) unlock(m1) 

选c,没解释出来。



3. 实现线程编程的两种方法

extends Thread和implements Runnable。


4. 哪些collections是非线程安全的

ArrayList,HashMap。还有神马大家补充吧


5. 写出快排代码

没写出来。面壁思过中。。


6. 怎么取得HashMap中key的HashCode

Object类的.hashCode()方法。Object类的方法一定要熟悉啊,包含wait(), notify()


7. 熟不熟悉java的设计模式

当时仅仅说出了几个模式名字


当时报的是android。结果给我面了java开发,对并发这些东西不深入了解是不行的。跪了。。


转载于:https://www.cnblogs.com/bhlsheji/p/5235321.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值