记一次百度面试经历:

发布于:2021-12-03 08:34:30

一、一面技术面:


1、solr全文索引;


2、写一个二分查找;


3、HashMap数据结构(JDK1.8为红黑树->并未看1.8的源码)问的很细,最后会问桶下面只能有链表实现吗?就是想问1.8的实现;


4、MySQL优化和索引;


5、spring的DI,IOC、AOP;


6、mybatis相关;


7、redis数据结构,持久化,最后问了一个分布式锁(我用redis实现:设置锁,设置超时时间,出现异常->超时自动释放锁);


8、synchronized和lock的区别,和内存实现,乐观锁和悲观锁;


9、线程相关;线程的实现,各种状态等;线程池的问题没有答上来;


10、volatile关键字只能保证可见性和有序性,原子性要用到synchronized加锁;


11、jvm相关:jvm内存结构,String a=new String("abc")->内存实现;类加载过程,各个属性都在哪?


12、通过jvm引出异常,error和exception,聊各种异常->怎么实现的异常,怎么处理


13、Linux查看进程等;ps aux|grep java? 看进程;jstack 1523 > 1523.log将tump文件输出到日志文件中;


总结:感觉答得最不好的是jvm这块,后续会加强.


提点:技术就是那些技术,但是不要为了面试而面试,多去看一看底层原理怎么实现的有了自己的理解



相关推荐

最新更新

猜你喜欢