当前位置: 首页> 科技> 能源 > metinfo企业网站管理系统_网络营销管理方案_肇庆seo排名_网络营销方案的制定

metinfo企业网站管理系统_网络营销管理方案_肇庆seo排名_网络营销方案的制定

时间:2025/8/2 0:26:39来源:https://blog.csdn.net/HELLO_E_SIR/article/details/147530722 浏览次数:0次
metinfo企业网站管理系统_网络营销管理方案_肇庆seo排名_网络营销方案的制定

📍面试公司:滴滴
📌面试岗位:Java 开发实习
📅投递时间:4 月 15 日
📞面试时间:4 月 25 日 上午
🔄面试轮次:技术一面 + 技术二面
🕒面试时长:每轮约 40 分钟


面试整体节奏:

滴滴这次Java 岗位几乎是一场“纯八股”考试,项目经历一笔带过,直接从 Java 基础、并发编程、数据库、Spring 框架、JVM 到系统优化、分布式锁、排查手段全流程覆盖。

一面主打八股基础,面试官态度很和善,会适当提示,属于“辅助答题”型;二面直接拉高强度,题目深度 + 宽度兼具,追问较多,一些系统性问题处理不太好,明显感觉有点被带崩了。


✅ 一面题目逐题整理与解析:

  1. ArrayList 和 LinkedList 的区别与使用场景?

    • 答案点:ArrayList 基于数组,随机访问快,插入删除慢;LinkedList 基于双向链表,插入删除快,查询慢。
  2. HashMap 和 ConcurrentHashMap 区别?后者如何线程安全?

    • 答案点:前者线程不安全,后者基于分段锁(JDK7)或 CAS+Synchronized(JDK8)实现并发安全。
  3. 线程池的创建方式及原理?

    • 答案点:ThreadPoolExecutor,核心参数解释、任务队列、拒绝策略等。
  4. Lock 的底层原理及与 synchronized 的区别?

    • 答案点:Lock 可中断、可限时、公平锁支持;底层基于 AQS 实现。
  5. synchronized 的锁升级过程?

    • 偏向锁 → 轻量级锁 → 重量级锁。
  6. sleep 和 wait 的区别?

    • 答案点:sleep 不释放锁,wait 释放锁,wait 必须在同步代码块中。
  7. 原子类如何实现原子操作?

    • 答案点:底层使用 Unsafe 类,依赖 CAS 实现。
  8. ThreadLocal 的原理与内存泄露问题?

    • 答案点:每个线程维护 ThreadLocalMap,key 是弱引用;未清理容易泄露。
  9. 红黑树、B树、B+树 结构和区别?Java 中的应用?

    • 红黑树:TreeMap;B+树用于数据库索引;顺序访问只用叶子节点。
  10. MySQL 存储引擎?Memory 引擎特点?

    • MyISAM 不支持事务;InnoDB 支持事务、行锁;Memory 存储在内存中,基于哈希索引。
  11. MySQL 联合索引优化:最左匹配、等值与范围查询?

    • 答案点:索引列的使用顺序会影响能否命中联合索引。
  12. MySQL 锁机制?

    • 行锁、表锁、意向锁、间隙锁(Next-Key Lock)。
  13. 事务的四大特性与 MySQL 实现?

    • ACID:原子性、隔离性、一致性、持久性;通过 undo/redo 日志 + MVCC 实现。
  14. Spring 如何解决循环依赖?三级缓存作用?

    • singletonObjects、earlySingletonObjects、singletonFactories,三级缓存机制。
  15. 手撕算法题:给字符串中最大字符后加“(max)”

    • 示例代码(示意):
    public String markMaxChar(String s) {char max = 0;for (char c : s.toCharArray()) {if (c > max) max = c;}return s.replaceAll(String.valueOf(max), max + "(max)");
    }
    

✅ 二面题目逐题整理与解析:

  1. Java 中为什么要设置字符串常量池?优势?

    • 节省内存,提升效率,String 属于不可变对象,可复用常量池中对象。
  2. 序列化与反序列化的过程?

    • ObjectOutputStream/ObjectInputStream,Serializable 接口。
  3. 有序的 Map 类型?如何实现?

    • TreeMap(基于红黑树),LinkedHashMap(基于链表维护顺序)。
  4. 线程池满了之后任务如何处理?拒绝策略?

    • AbortPolicy、CallerRunsPolicy、DiscardPolicy、DiscardOldestPolicy。
  5. 线程执行异常怎么办?任务丢失怎么避免?

    • 提交前 try/catch 捕获,设置 UncaughtExceptionHandler,自定义 RejectedExecutionHandler。
  6. JVM 中对象被 GC 的条件?

    • 可达性分析,弱引用、无引用关系等;GC Roots 起点。
  7. SpringBoot 常用注解?

    • @SpringBootApplication、@RestController、@EnableAutoConfiguration、@ComponentScan、@Configuration 等。
  8. MySQL 索引原理?什么时候回表?什么时候索引失效?

    • 回表:覆盖索引无法满足 select 字段时;失效:like ‘%a’、函数包裹字段、or 混用等。
  9. MySQL 修改单行记录时的锁机制?

    • Next-Key Lock 行锁/间隙锁,涉及 MVCC 乐观锁/悲观锁理解。
  10. 问到分布式锁:如何实现?Redis/Zookeeper?ZK 原理?

  • Redis setnx + 过期时间;Zookeeper 利用临时有序节点 + watcher 实现锁机制。
  1. 系统上线后卡顿如何排查?
  • 从 JVM、GC、线程 dump、慢查询、接口响应时间、调用链等角度排查。
  1. 系统查表慢,不止数据库,该怎么优化?
  • 分析链路瓶颈,缓存预热、慢 SQL、IO 延迟、网络延迟、负载均衡等。
  1. 是否做过压测?(没有)

  2. 实习收获?

  3. 反问业务是否涉及信息安全?结果被反问网络安全与加密算法 😅


🧠 总结 & 面试复盘:

一面能基本应对,虽然有卡顿但还能接住;二面加压之后暴露了知识点的“理解盲区”和“记忆边界”问题,像线程池异常处理、分布式锁底层、GC 等场景性题目都属于实战积累不足导致。

📌 建议补强方向

  • 线程池全流程 & 源码级别掌握
  • MySQL 索引失效、锁机制、事务隔离级别再深入
  • JVM GC 触发条件和对象存活判断
  • 分布式锁 & SpringBoot 核心注解体系记牢
  • 系统优化 & 排查技巧需通过实战训练补足

🎯 如果你也在准备 Java 实习/社招,可以点赞+留言交流,我会继续整理类似的高频面经 + 项目思路拆解,希望大家都能稳稳上岸!

关键字:metinfo企业网站管理系统_网络营销管理方案_肇庆seo排名_网络营销方案的制定

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: