10 2025 档案

摘要:目录Java常用机制 - SPI机制详解简单介绍SPI工作流程SPI的三大核心价值:1. 解耦2. 插拔式扩展3. 自动发现一句话总结:SPI实现代码示例步骤 1:定义服务接口步骤 2:提供具体实现(由不同厂商提供)步骤 3:创建配置文件步骤 4:使用 ServiceLoader 发现并调用服务输出 阅读全文
posted @ 2025-10-23 20:04 deyang 阅读(18) 评论(0) 推荐(0)
摘要:目录Jvm参数分类总结快速概览1. 标准参数 (Standard Options)2. 扩展参数 (X Options)3. 高级运行时参数 (XX Options)布尔类型键值类型4. 系统属性 (System Properties)5. 主类参数 (Main Class Arguments) J 阅读全文
posted @ 2025-10-20 19:24 deyang 阅读(6) 评论(0) 推荐(0)
摘要:目录启动JAVA直接类启动JAR 包启动类路径例子启动方式总结 启动JAVA 直接类启动 # 当你不指定 -cp 时,JVM 使用: java com.example.Main # 等效于:只包含当前目录,不包含其他 JAR! java -cp . com.example.Main JAR 包启动 阅读全文
posted @ 2025-10-20 17:05 deyang 阅读(6) 评论(0) 推荐(0)
摘要:目录Java 8 - Optional类Optional类感觉用处不大,我自己会主动判断null来规避?表面看确实像 "语法糖",你可能会想:但 Optional 的真正威力在这里:1. API 设计的语义清晰度2. 链式操作的巨大优势3. 函数式编程的集成4. 流式处理 (Stream API) 阅读全文
posted @ 2025-10-20 14:04 deyang 阅读(11) 评论(0) 推荐(0)
摘要:目录关于内核态:synchronized和ReentrantLock 关于内核态:synchronized和ReentrantLock 对比: 特性 synchronized ReentrantLock 默认状态 偏向锁(用户态) CAS(用户态) 低竞争 轻量级锁(用户态) 自旋(用户态) 高竞争 阅读全文
posted @ 2025-10-17 15:27 deyang 阅读(5) 评论(0) 推荐(0)
摘要:目录Java并发之AQS详解1. AQS 是什么?2. 核心原理2.1 一个状态:state2.2 一个队列:CLH 变种队列2.3 一套模板方法:获取与释放3. 工作流程(以 ReentrantLock 的独占模式为例)3.1 获取锁 (lock() -> acquire(1))3.2 释放锁 ( 阅读全文
posted @ 2025-10-17 14:29 deyang 阅读(14) 评论(0) 推荐(0)
摘要:目录Java中断引言:为什么需要线程中断?中断 Java中断 引言:为什么需要线程中断? 在并发编程中,我们经常需要协调不同线程的执行。 有时,一个线程需要通知另一个线程停止其当前正在执行的任务。 你可能会想到一些看似直接的方法,比如调用 Thread.stop() 或 Thread.suspend 阅读全文
posted @ 2025-10-17 11:08 deyang 阅读(6) 评论(0) 推荐(0)
摘要:目录线程的状态对比:等待、驻留、监视等待(waiting)和监视(blocked)的区别等待(waiting)和监视(blocked)都算是阻塞吗?线程池没有任务来时,所有核心线程会是等待(waiting)状态?不同类型的等待总结等待(Wait)和驻留(Park)的区别代码示例对比总结Park状态的 阅读全文
posted @ 2025-10-15 14:00 deyang 阅读(21) 评论(0) 推荐(0)
摘要:目录G1垃圾收集G1了解G1的三种主要回收类型1. 年轻代垃圾收集2. 混合垃圾收集3. Full GC总结个人总结G1对比CMSCMS vs G1:核心逻辑对比CMS vs. G1:收集事件交织对比CMS 与 G1 收集时机对比总览GC之间正确的时序与逻辑关系场景一:正常的Young GC(大部分 阅读全文
posted @ 2025-10-13 16:37 deyang 阅读(23) 评论(0) 推荐(0)
摘要:目录集群、分布式、微服务核心关系一句话总结三者的角色与定位层层递进的关系解析一个最终的比喻:建设城市分布式和微服务分布式和微服务历史演进的视角阶段一:单体架构时代(前分布式时期)阶段二:集群时代(解决可用性与扩展性)阶段三:分布式系统时代(解决性能与分工)阶段四:微服务时代(解决业务敏捷性与复杂度) 阅读全文
posted @ 2025-10-11 10:55 deyang 阅读(17) 评论(0) 推荐(0)
摘要:目录元空间的两个重要参数 元空间的两个重要参数 -XX:MetaspaceSize=128m # 这不是"初始大小",而是"GC触发线" ,当元空间使用量接近这个值时,触发GC尝试回收 -XX:MaxMetaspaceSize=512m # 这是元空间绝对不能超过的限制,达到这个限制会触发Full 阅读全文
posted @ 2025-10-09 15:17 deyang 阅读(12) 评论(0) 推荐(0)
摘要:目录堆空间的GC和元空间的GC核心区别对比工作原理的本质区别堆GC(新生代/老年代)元空间GC执行过程的区别堆GC的执行流程元空间GC的执行流程实际运行中的交互场景1:Full GC触发元空间GC场景2:元空间不足触发Full GC监控时的表现差异观察堆GC观察元空间GC调优参数的区别堆GC调优参数 阅读全文
posted @ 2025-10-09 11:36 deyang 阅读(16) 评论(0) 推荐(0)
摘要:目录线程池核心参数线程池工作流程线程池提交任务执行无返回值任务:提交有返回值任务:执行流程对比ScheduledThreadPool (定时任务线程池):任务包装方式实现细节对比使用建议性能考虑执行细节说明线程池的常见类型1. FixedThreadPool (固定大小线程池)2. CachedTh 阅读全文
posted @ 2025-10-09 11:03 deyang 阅读(17) 评论(0) 推荐(0)
摘要:权限开放程度排序(从宽到严) public > protected > friendly(默认) > private (越往右,限制越严格) 修饰符 类内部 同一个包/命名空间 子类 其他类 public ✔ ✔ ✔ ✔ protected ✔ ✔(Java) ✔ ✖ friendly ✔ ✔ ✖ 阅读全文
posted @ 2025-10-09 10:27 deyang 阅读(9) 评论(0) 推荐(0)
摘要:目录原码整数:表示方法:示例(8位):特点:范围(n位整数):小数:1. 原码小数的结构2. 最大正小数的推导3. 最小负小数的推导4. 表示范围总结关键点:反码补码移码移码的编码规则移码的转换示例 原码 整数: 表示方法: 符号位:最高位(0=正,1=负) 数值位:剩余位表示绝对值 示例(8位): 阅读全文
posted @ 2025-10-09 10:16 deyang 阅读(13) 评论(0) 推荐(0)