Java八股文
文章平均质量分 80
专栏聚焦Java后端高频面试题与核心原理,系统梳理JUC并发、JVM调优、Spring源码、MyBatis执行流程等必考知识点,深入剖析分布式事务、数据库锁机制、缓存穿透等实战难点。结合大厂真题与源码解析,助你快速掌握设计模式、线程池、微服务架构等硬核技能,直击面试痛点,夯实技术底层逻辑。
Craaaayon
让代码跑一会~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【JUC】线程池有哪些拒绝策略?该如何选择使用?
本文详细解析了线程池在工作队列和线程数均达上限时,所采用的四种内置拒绝策略:默认的AbortPolicy(中止并抛异常)、CallerRunsPolicy(由调用者线程执行)、DiscardPolicy(静默丢弃)以及DiscardOldestPolicy(丢弃队列中最老的任务)。文章不仅阐述了每种策略的行为、优缺点和典型应用场景,还指导开发者如何根据业务的关键程度和容错能力进行选择,并提供了自定义拒绝策略的实现方式。最后强调,拒绝策略是系统过载时的最后一道防线,合理配置线程池参数才是从根本上避免任务被拒绝原创 2025-10-12 18:35:02 · 882 阅读 · 0 评论 -
【JUC】为什么每个线程对象只能调用一次 start() 方法?
线程对象只能调用一次start()方法,这是由线程生命周期的不可逆性决定的。start()会将线程从NEW状态转为RUNNABLE状态,JVM为其分配独立资源。一旦线程终止,无法重新回到初始状态。重复调用会导致资源冲突、并发安全问题,并可能引发内存错误或数据不一致。这种设计确保了线程执行的确定性和安全性。原创 2025-10-12 16:03:09 · 188 阅读 · 0 评论 -
一文详细:synchronized关键字的底层原理 及 锁升级
本文深度剖析Java synchronized关键字底层原理,从对象头结构、Monitor机制切入,详解无锁→偏向锁→轻量级锁→重量级锁的全流程锁升级策略。结合JVM源码与内存布局图,揭秘锁膨胀条件、自旋优化及锁撤销机制,助你掌握高并发场景下的锁优化本质,从容应对并发面试与性能调优挑战。原创 2025-07-27 02:36:34 · 1093 阅读 · 0 评论 -
JVM虚拟机-类加载器、双亲委派模型、类装载的执行过程
本文系统解析JVM类加载机制,详解类加载器分类(启动类、扩展类、应用类加载器)、双亲委派模型工作原理,结合类装载流程(加载→链接→初始化)剖析字节码加载与静态资源分配逻辑。助力开发者深入理解类动态加载原理,提升自定义类加载器设计与内存泄漏排查能力。原创 2025-04-23 00:07:56 · 584 阅读 · 0 评论 -
JVM虚拟机-垃圾回收(垃圾回收器、垃圾回收算法、分代回收、四大引用)
本文系统解析JVM垃圾回收机制,详解分代回收模型(新生代/老年代)、标记-清除/复制/整理算法原理,对比Serial、CMS、G1等回收器核心差异。结合强引用、软引用、弱引用、虚引用的应用场景与内存管理策略,探讨GC调优参数配置及内存泄漏排查思路,助力开发者理解回收逻辑,优化Java应用性能与稳定性。原创 2025-04-23 00:28:52 · 1153 阅读 · 0 评论 -
JVM虚拟机--JVM的组成
本文系统解析JVM核心组成与内存模型,详解程序计数器、堆(分代结构与GC机制)、方法区(元空间)、直接内存及虚拟机栈(栈帧与线程私有性)。针对高频问题,探讨栈内存与垃圾回收的关系、局部变量线程安全性、栈溢出触发条件,并对比堆栈的核心差异。结合实例剖析内存分配策略与性能隐患,助开发者深入理解JVM运行机制,提升内存调优与异常排查能力。原创 2025-04-19 16:10:24 · 1061 阅读 · 0 评论 -
Java八股文-List集合
本文深度解析Java中List集合的核心考点,对比ArrayList、LinkedList与Vector的底层实现(数组/链表)及性能差异,详解自动扩容机制(如ArrayList 1.5倍扩容)、线程安全实现与遍历优化策略。结合源码与实战场景,探讨快速失败机制、迭代器陷阱及适用场景,助开发者掌握高频面试题核心逻辑,提升集合类使用效率与代码健壮性。原创 2025-04-06 22:22:03 · 652 阅读 · 0 评论 -
MyBatis八股文-执行流程、延迟加载、一级与二级缓存
本文系统解析MyBatis核心机制,详解SQL执行流程(接口代理→SQL解析→结果映射)、延迟加载原理及触发条件,并对比一级缓存(SqlSession级)与二级缓存(Mapper级)的作用域、失效策略与配置优化。结合案例与配置实例,探讨缓存并发问题与解决方案,助力开发者深入理解MyBatis底层逻辑,规避常见性能隐患,提升持久层代码效率与可维护性。原创 2025-04-05 22:38:51 · 1109 阅读 · 1 评论
分享