今天下午参加了一场面试,面试效果很差,这里整理下面试的问题,方便学习提升。
一上来是自我介绍,自我介绍时过于紧张语速过快模糊,没有很好的介绍自己的情况,需要提前准备一份自我介绍,讲清楚自己的能力跟目前工作的情况。
1. 介绍下你现在在做的项目
(因为简历上写的最近的一个项目是接手的其他组开发的项目,所以就简单说了说,仅模糊说出了用到Redis跟ActiveMQ的地方)
1.1 ActiveMQ中的任务超时了怎么办?答没考虑
1.2 项目中遇到了什么难点?答使用图片相似度检测接口时得到的结果正确率很低(没有讲清楚使用商品分类来提升准确率的解决办法)(面试官回复那这只算接口方的问题不是你这的问题,还有没有其他的问题?答没有了)
2. HashMap的put方法执行的底层逻辑。
答对key进行hash然后取模,然后构建Entry元素插入到hash对应的链表头部,在jdk8以后链表到达一定长度时会有一个转化成红黑树的过程,之后遍历这个链表,如果遇到含有put元素相同的key的Entry元素则覆盖然后返回原Entry元素的值。
2.1 HashMap中的数组在什么时候转化为红黑树?答不了解
2.2 为什么会选用红黑树?答查询速度快
2.3 为什么红黑树查询速度快?答不知道
3. springcloud熟悉不,一般都有哪些组件?答服务注册、服务发现、熔断器、网关、配置中心
3.1 spring的@Bean底层原理了解吗?答不清楚
4. 说说Java8有哪些新特性?答lambada表达式,接口默认方法,其他的不知道了
4.1 你在什么地方用到lambada表达式?答重写集合的比较器,创建线程
4.2 你们项目中线程用的多吗?答不多
4.3 你一般都怎么创建线程?答继承Thread类或实现Runnable接口
4.4 没用过线程池吗?
5. 假如有多个if else该怎么优化?
6. mysql设计表时索引方面应该注意什么?
6.1 mysql索引的底层数据结构是什么?
6.2 MyISAM跟InnoDB的区别是什么?
6.3 数据库事务的隔离级别清楚吗?
7. 算法求最长回文子串的思路
面试中被问到的大部分问题都没有回答出来,需要补的东西很多。