实习 | 靖安科技Java面经

校大原创

收藏 0 评论 0

1. 简单做一下个人介绍

2. 请问你目前是否已经离职?

3. 上一家公司选择离职是什么原因?

4. 讲讲 HashMap 的底层实现原理

5. JDK1.8 为什么要在 HashMap 中引入红黑树结构?

6. HashMap 是否具备线程安全特性?多线程同时执行 put 操作会出现什么现象?

7. 分析 HashMap 线程不安全的根源

8. ConcurrentHashMap 是如何保障线程安全的?

9. 解释 CAS 是什么

10. 对比 synchronized 和 ReentrantLock 的差异

11. ReentrantLock 包含公平锁与非公平锁,二者有什么不同?

12. 说明线程池的核心配置参数

13. 假设核心线程数=10,最大线程数=100,阻塞队列容量=1000,描述提交任务时线程数量的变化过程;任务数量超出最大线程数时,有哪些可用的拒绝策略?

14. 如果阻塞队列不设置容量上限,会引发什么问题?

15. ThreadLocal 的作用是什么?

16. 阐述 ThreadLocal 的底层实现原理

17. 在多线程场景下,有哪些加锁方案?

18. 如果要基于 Redis 实现分布式锁,你的实现思路是什么?

19. Redisson 的底层原理是什么,锁的自动续期机制如何实现?

20. Redis 有哪些基础数据类型,各自适用什么业务场景?

21. 分别说明缓存穿透、缓存击穿、缓存雪崩,以及对应的解决办法

22. Redis 集群有哪几种部署模式?

23. Redis 哨兵机制的作用是什么?

24. MySQL 底层存储数据使用了什么数据结构?

25. MySQL 提供了哪几种事务隔离级别,默认采用哪一级?

26. 讲解可重复读隔离级别的含义

27. 介绍 MySQL 的主从复制机制

28. Binlog 日志支持哪几种存储格式?

29. 在 MyBatis 中,采用哪种写法可以规避 SQL 注入风险?

30. MyBatis 中 `${}` 和 `#{}` 的区别是什么?

31. 介绍 MyBatis 的缓存体系

32. Spring AOP 能解决什么问题,底层依靠什么技术实现?

33. 介绍类加载的双亲委派模型

34. JVM 的垃圾回收机制是什么,有哪些垃圾回收算法和垃圾收集器?

35. 挑选一个你最熟悉的垃圾回收器进行介绍

36. 接触过哪些前端框架,是否可以独立完成前端开发?

37. 是否了解 Vue 的基础知识点,例如组件生命周期?

38. 我们团队前端技术栈主要是 React,如果需要你系统学习 React 基础,预估需要多久?

39. 你的项目部署有没有使用 Docker?

40. 说说你上一段实习参与的项目,负责哪些工作,遇到过哪些难点,如何解决?

41. 简历看到你实习项目利用 Redisson 开发物联网古树养护闭环系统,并且实现延迟队列,详细介绍一下这个项目

42. 如果项目上线后 CPU 占用突然飙升,你的排查思路是什么?

43. 如果交给你一个全新需求,允许借助AI工具,从需求阶段到项目上线完整流程,你会怎么开展工作?