刚刚面试的小厂的八股盛宴

屯大软件一面

Q1: 先简单自我介绍一下。

Q2: 你是什么时候开始接触 Java 开发的?

Q3: 学习过程是完全自学的吗?学校有相关课程吗?

二、 Java 基础能力
Q4: Java 里面的基本数据类型有哪些?

Q5: Java 的集合类型分为哪几大块?常用的有哪些?

Q6: ArrayList 和 LinkedList 的底层实现有什么区别?

Q7: 在查找和插入操作上,ArrayList 和 LinkedList 哪个更快?为什么?

Q8: 接口(Interface)跟抽象类(Abstract Class)有什么区别?

Q9: 在实际应用或实习中,你是如何区分使用接口和抽象类的?

Q10: 方法的重载(Overload)跟重写(Override)有什么区别?

Q11: 谈谈 Java 中的装箱跟拆箱,它们的原理是什么?

Q12: static 关键字有哪些作用?可以修饰哪些地方?

Q13: Java 的异常体系是怎样的?Error 和 Exception 有什么区别?

Q14: 遇到异常通常有哪些解决方法?

三、 并发与多线程
Q15: 在 Java 中创建多线程有哪几种方法?

Q16: 线程的生命周期分为哪几个阶段?

Q17: 什么是公平锁?什么是非公平锁?它们有什么区别?

Q18: 你知道哪些典型的锁是公平的或非公平的?

四、 框架底层与原理
Q19: Spring 的两大核心思想是什么?

Q20: Spring 声明式事务(@Transactional)的底层实现原理是什么?

Q21: Spring Boot 的自动配置(Auto-Configuration)原理你了解吗?

五、 数据库与中间件
Q22: MySQL 事务的四大特性(ACID)分别指什么?

Q23: MySQL 常见的索引类型有哪些?

Q24: 谈谈数据库索引底层 B+ 树的实现原理。

Q25: Redis 常用的数据类型有哪些?

Q26: 什么是分布式锁?在 Redis 中通常怎么实现?

Q27: 消息队列(MQ)主要用来解决什么问题?

Q28: 能结合你的实习项目讲讲 MQ “削峰填谷”的具体应用吗?

六、 工程实践与岗位匹配
Q29: Linux 操作系统的基础命令了解吗?

Q30: 在项目中有没有配置过 Nginx?负载均衡有哪些常用算法?

Q31: 对前端了解深吗?有没有做过联调以外的前端工作?

Q32: 如果实习岗位需要做一些“全栈”的工作,你可以接受吗?

Q33: 你平时会用到哪些 AI 开发工具来辅助编程?

Q34: 你现在大三,最长可以实习多久?

Q35: 你有什么想问我的吗(反问环节)?
全部评论

相关推荐

04-17 23:48
西北大学 Java
点赞 评论 收藏
分享
03-22 12:47
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
04-18 15:10
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务