Java教程
已收录文章:31篇
-
Java 线程池出现任务堆积时,不要只盯着活动线程数。本文用队列长度、完成任务数和拒绝策略还原排查路径,并给出可复现的状态采样代码。284 收藏
-
文章 · java教程 | 1个月前 | 排序 · 调试 · 集合 · Stream · Java教程 · java Stream linkedhashmap Collectors.groupingBy 分组顺序Java Stream 用 groupingBy 分组时,结果默认通常是 HashMap,不能把遍历顺序当成输入顺序。本文从订单状态统计场景出发,拆解 LinkedHashMap 作为 mapFactory 的写法、排序边界和测试验收方法。275 收藏
-
文章 · java教程 | 2个月前 | 面向对象 · Java教程 · Java 25 · 语言特性 · Java 25 JEP 513 Flexible Constructor Bodies super 构造器 Java 构造器Java 25 将 Flexible Constructor Bodies 变成永久特性,构造器可以在 super() 或 this() 前执行不依赖实例的校验和参数准备。本文用订单金额校验和继承构造器示例,讲清可写什么、不能引用什么,以及从 Java 24 预览代码迁移时要检查的边界。271 收藏
-
处理跨地区订单或预约时间时,LocalDateTime 遇到夏令时重复小时会对应两个瞬间。本文用 ZoneRules 判断重复与缺失时间,明确偏移选择,并用回放测试锁住边界。264 收藏
-
Java Stream 做分组统计时,先收集再多次遍历容易放大内存和 CPU 成本。本文用订单状态统计说明 groupingBy、groupingBy+下游收集器与并行流的边界,并给出可复查的基准与选择方法。260 收藏
-
文章 · java教程 | 2个月前 | 反序列化 · Java教程 · 安全编程 · java Java安全 ObjectInputFilter 反序列化过滤 Serialization FilterJava ObjectInputFilter 可以在对象反序列化过程中检查类名、数组长度、对象图深度、引用数和输入字节数。本文用一个白名单场景写出最小过滤器,并用可验证的拒绝案例检查边界。257 收藏
-
Java 线程池调用 shutdownNow 后,等待队列会被移出,但正在执行的任务只是收到中断请求,并不等于立刻停止。本文从一次停机任务未收敛的现场出发,拆解中断传播、阻塞调用、任务清理和 awaitTermination 验收方法。252 收藏
-
Java Stream 的 mapMulti 适合把一个元素展开为零个或少量结果,尤其适用于带条件分支的解析和提取。本文用订单标签解析示例说明它与 flatMap 的选择、泛型推断、Consumer 生命周期和验收边界。250 收藏
-
Java 管理外部子进程时,isAlive、onExit 和 exitValue 解决的是不同问题。本文用一个可复现的小任务拆解退出状态、异步等待、异常处理与句柄回收边界。249 收藏
-
Java NIO WatchService 适合监听目录变化,但它不是变更日志:事件可能合并、丢弃或因 WatchKey 失效而停止通知。本文从注册目录、处理事件、识别 OVERFLOW、去重和全量重扫几个边界,给出一套可复查的实现方式。231 收藏
-
JTable 开启排序后,复选框状态容易因为视图行号和模型行号混用而错位。本文用一个可运行的 Swing 表格拆开索引转换、状态保存、刷新重建和验收方法。226 收藏
-
文章 · java教程 | 2个月前 | 面向对象 · Java教程 · Java 25 · 语言特性 · Java 25 JEP 513 Flexible Constructor Bodies super 构造器 Java 构造器Java 25 将 Flexible Constructor Bodies 变成永久特性,构造器可以在 super() 或 this() 前执行不依赖实例的校验和参数准备。本文用订单金额校验和继承构造器示例,讲清构造器链迁移时可写什么、不能引用什么,以及从 Java 24 预览代码升级时要检查的边界。200 收藏