春秋航空 Java 开发实习面试经验

春秋航空 · Java开发实习 · 线下技术面 · 重庆 · 2026-04

《面试题目》

一、个人与项目经历

  1. 自我介绍及实习时间确认。
  2. 蓝桥杯竞赛详情。
  3. 项目功能模块拆解及架构设计。
  4. 项目中百级用户并发控制策略。
  5. 人工智能工具使用及Python相关库了解。
  6. 印象深刻的项目难点解决与团队冲突处理。

二、Java基础与面向对象

  1. Java基础及集合框架(线程安全/不安全集合)。
  2. String/StringBuffer/StringBuilder区别,基类有哪些。
  3. 面向对象特性、类与对象区别、实例化方法。
  4. 构造方法、抽象类、接口与多继承。
  5. 包装类比较、equals重写、深拷贝与浅拷贝。
  6. 强/软/弱/虚引用区别。
  7. 反射应用场景。
  8. 锁机制(Synchronized加在类与方法区别)。

三、框架与数据库

  1. Restful API设计规范及请求方式。
  2. JUnit单元测试注解与依赖。
  3. MySQL事务控制(开启、回滚、提交)。
  4. Spring事务隔离级别及嵌套事务(Propagation)问题。
  5. Redis缓存穿透、击穿、雪崩及加锁机制。
  6. Spring Boot全局异常处理及Bean容器化。

四、非技术问题

  1. 职业规划与地域选择、加班文化看法。

《参考解析》

  1. Spring事务嵌套问题:若子方法异常,是否回滚取决于事务传播行为(Propagation)。默认REQUIRED下,子方法异常会标记当前事务为rollback-only,导致外层事务随之回滚。
  2. 缓存三兄弟
    • 穿透:查询不存在数据,解决:布隆过滤器或缓存空对象。
    • 击穿:热点Key失效,解决:互斥锁(Redis SETNX)或逻辑过期。
    • 雪崩:大量Key同时过期,解决:随机过期时间或加锁限流。
  3. Synchronized机制:加在方法上锁的是当前对象实例(this);加在类(static方法或类对象)上锁的是类对象(Class),影响该类所有实例。
  4. 引用类型:强(GC不回收)、软(内存不足回收)、弱(GC即回收)、虚(无法通过引用取值,用于回收监控)。
  5. 深拷贝与浅拷贝:浅拷贝仅复制引用,深拷贝需通过序列化或递归复制对象内部所有属性。