百度后端提前批一面 凉经

7.19投递 7.22发测评 7.23约面试时间 7.25一面

无手撕。面试官是一位小哥哥,很温柔。在此之前,我主要是背八股和把复习项目是怎么做的,但面试中问了比较多为什么要这么做的问题,由于八股也没准备得特别好以及之前对为什么要这么做这类问题思考较少,感觉整个面试过程回答得比较混乱,第二天也发现简历处于共享中了。

1.自我介绍

2.面向对象和面向过程的区别

3.面向对象的特点是封装、继承、多态,在你的项目中你是如何去运用这些特点的,有哪些地方涉及到抽象、继承、多态等

4.对于上一个问题,我回答抽象了一个返回给前端的结果类,面试官问其中的data字段是不是一个泛型,我用的是Object类,面试官就问用泛型和Object类分别有什么优点和不足,然后又问到了解泛型的擦除机制吗

5.上一个问题中,我的回答涉及到了反射,于是面试官问在项目开发过程中有用到反射吗

6.我的回答涉及了spring,于是问spring是如何管理bean的

7.还了解其他的依赖注入框架吗

8.springmvc框架和springboot框架的关系

9.你的秒杀系统项目里哪些地方使用了java并发编程技术

10.会不会发生大家都秒杀到或者都没秒杀到的情况

11.为什么把线程池数量设置为20,我说我随机设的没考虑太多,面试官就说那假设现在这个机器是两核四线程的cpu,那么在秒杀场景下20个线程的数量是多还是少

12.让你设计一个线程池的话,你会考虑些什么。已有的创建线程池方法可以传入核心线程数量、最大线程数量、存活时间、任务队列、拒绝策略这些参数,那在秒杀系统中,这些参数够用吗,有没有什么可以改进的地方,比如当秒杀系统闲时,线程池中依然有20个线程,是不是会造成资源浪费。

13.项目中的多级缓存是怎么实现的,如何处理数据一致性的问题

14.rockemq和rabbitmq的区别,分别适合什么场景

15.建数据库的表的时候有没有什么原则,有什么考虑

16.库存表和商品信息表之间有没有用外键,不用外键会有什么问题

17.对maven、git、docker的了解程度

18.Linux的相关命令

通过这次面试还是学习到了很多,发现了知识上的不足,以及语言组织能力的不足,回答问题都好磕磕绊绊,要多练习完整地回答一个问题的技能。

全部评论
老兄做的什么项目
1 回复 分享
发布于 07-27 17:28 四川
不应该不用外键吗?外键会导致性能下降
1 回复 分享
发布于 07-29 12:49 湖北
这也太难了
点赞 回复 分享
发布于 07-28 21:57 天津
项目拷打这么多
点赞 回复 分享
发布于 07-28 23:53 吉林
uu面的哪个部门啊
点赞 回复 分享
发布于 08-01 10:21 四川

相关推荐

头像
10-15 21:14
门头沟学院 C++
10.15,难度中等。其中数学题和规律题比较多第一题:给你1-n个数,你能填充k个,如果i被填充且i + 1没有被填充则积分增加1这题考虑构造最优解法,先间隔填充(n + 1) / 2个,然后反向填充。答案公式为(n + 1) / 2 - (k - (n + 1) / 2) + n % 2 == 0 第二题:给你一个字符串,执行size次变换,第i次变换将s【i】移动到字符串末尾。问size次变换之后答案是多少暴力变换时间复杂度过高。这里考虑递归实现分治变换。n最开始为size,每次变换当前n / 2 次,直到n = 1。注意每次要记录起始位置。第三题:给你n大小的数列,你要做n - 1次变化,每次使得a[i] + (-1 | 1) *a[i + 1]。如{1, 2, 3, 4}, 第一次变化到{1 + 2, 2 - 3, 3 + 4}。这题玩弄玩弄样例,发现n为偶数具备明显规律。当n为偶数时,满足最后两项的和为间隔的二项式系数变形。即为a[1] + C(n / 2, 1) * a[3] + C(n / 2, 2) * a[5] .... + C(n / 2, n / 2) a[n]。而n为奇数时直接变化成偶数即可。不记得怎么写C的预处理了,直接交卷了#百度求职进展汇总##百度##笔试##你都收到了哪些公司的感谢信?#
点赞 评论 收藏
分享
9 54 评论
分享
牛客网
牛客企业服务