IT技术进阶技术干货

BAT经典面试题汇总

2017-12-28  本文已影响41人  5f1df32e8c44

面试题

java的反射是如何实现的

LinkedHashmap的底层实现

4亿个url,找出其中重复的(考虑内存不够,通过hash算法,将url分配到1000个文件中,不同的文件间肯定就不会重复了,再分别找出重复的)

对表做统计时可直接看schema info信息,即查看表的系统信息

. mysql目前用的版本

可重入锁中对应的wait和notify

java有哪些容器(集合,tomcat也是一种容器)

java的concurrent包用过没

volatile关键字用法

web的http请求如何整体响应时间变长导致处理的请求数变少,该如何处理?用队列,当处理不了那么多http请求时将请求放到队列

二叉树遍历

static加锁

zookeeper的事物,结点,服务提供方挂了如何告知消费方

qmq消息的实现机制(qmq是去哪儿网自己封装的消息队列)

ThreadLocal的使用场景

字符串的格式化方法 (20,21这两个问题问的太低级了)

pring的bean配置的几种方式

统计一个整数的二进制表示中bit为1的个数

jvm内存模型,java内存模型

将一个链表反转(用三个指针,但是每次只发转一个)

台服务器如何选出leader(选举算法)

事务隔离级别

class文件编译后加载到了哪

http协议格式,get和post的区别

对表做统计时可直接看schema info信息,即查看表的系统信息

Override和Overload的区别,分别用在什么场景

自己相对于一样的应届生有什么优势

innodb对一行数据的读会枷锁吗?不枷锁,读实际读的是副本

threadlocal使用时注意的问题(ThreadLocal和Synchonized都用于解决多线程并发访问。但是ThreadLocal与synchronized有本质的区别。synchronized是利用锁的机制,使变量或代码块在某一时该只能被一个线程访问。而ThreadLocal为每一个线程都提供了变量的副本,使得每个线程在某一时间访问到的并不是同一个对象,这样就隔离了多个线程对数据的数据共享。而Synchronized却正好相反,它用于在多个线程间通信时能够获得数据共享)

是否用过NIO

在五年的时间内,你的职业规划?

这是每一个应聘者都不希望被问到的问题,但是几乎每个人都会被问到,比较多的答案是“管理者”。但是近几年来,许多公司都已经建立了专门的技术途径。这些工作地位往往被称作“顾问”、“参议技师”或“高级软件工程师”等等。

当然,说出其他一些你感兴趣的职位也是可以的,比如产品销售部经理,生产部经理等一些与你的专业有相关背景的工作。要知道,考官总是喜欢有进取心的应聘者,此时如果说“不知道”,或许就会使你丧失一个好机会。最普通的回答应该是“我准备在技术领域有所作为”或“我希望能按照公司的管理思路发展”。

你对薪资的要求?

回答提示:如果你对薪酬的要求太低,那显然贬低自己的能力;如果你对薪酬的要求太高,那又会显得你分量过重,公司受用不起。一些雇主通常都事先对求聘的职位定下开支预算,因而他们第一次提出的价钱往往是他们所能给予的最高价钱,他们问你只不过想证实一下这笔钱是否足以引起你对该工作的兴趣。

回答样本一:如果你必须自己说出具体数目,请不要说一个宽泛的范围,那样你将只能得到最低限度的数字。最好给出一个具体的数字,这样表明你已经对当今的人才市场作了调查,知道像自己这样学历的雇员有什么样的价值

回答样本二:我对工资没有硬性要求,我相信贵公司在处理我的问题上会友善合理。我注重的是找对工作机会,所以只要条件公平,我则不会计较太多。

回答样本三:我受过系统的软件编程的训练,不需要进行大量的培训,而且我本人也对编程特别感兴趣。因此,我希望公司能根据我的情况和市场标准的水平,给我合理的薪水。

一个程序员学习平台分享给你们,让你在实践中积累经验掌握原理。主要方向是JAVA工程师。如果你想拿高薪,想突破瓶颈,想跟别人竞争能取得优势的,想进BAT但是有担心面试不过的,可以加我的Java学习交流群:450936584

注:加群要求

1、大学学习的是Java相关专业,毕业后面试受挫,找不到对口工作可以

2、在公司待久了,现在过得很安逸,但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的

3、参加过线下培训后,知识点掌握不够深刻,就业困难,想继续深造

4、已经在Java相关部门上班的在职人员,对自身职业规划不清晰,混日子的

5、有一定的C语言基础,接触过java开发,想转行的

小号勿扰,不喜勿加

上一篇下一篇

猜你喜欢

热点阅读