java教程技术文章
-
JVM Class Data Sharing(CDS)可以把批处理实际加载的类保存为归档,在后续启动时减少类加载和启动准备开销。本文给出静态与动态归档命令,说明 JDK、类路径和回退边界,并区分 CDS 与业务对象分配优化。414 收藏 -
用 Java HttpClient 的 sendAsync、响应体处理器和定时取消组合,处理响应体迟迟不完成的超时、资源收束与异常边界。413 收藏 -
Java 21 可根据 sealed 类型的允许子类型检查 switch 是否穷尽。本文用订单结果模型说明覆盖规则、为何省略 default,以及 null、守卫、泛型与版本演进边界。413 收藏 -
Java DateFormatSymbols.getInstance(Locale) 可以按指定 Locale 取得本地化日期符号,再用 getMonths() 或 getShortMonths() 读取月份名称。本文说明月份常量索引、完整与缩写月份的选择,以及避免默认 Locale 造成输出漂移的写法。411 收藏 -
PropertyChangeSupport 的 setter 已执行但监听器未回调,常见原因是旧值和新值都非 null 且按 equals 相等。本文拆解对象、null、基本类型和 indexed 重载的通知边界,并给出动作事件与最小测试的修复思路。408 收藏 -
Java 的默认 Locale 会影响未显式指定区域设置的数字、日期和字符串格式化。本文说明 FORMAT Locale 的作用、常见不稳定场景,以及如何用显式 Locale 区分展示文本和机器协议。406 收藏 -
文章 · java教程 | 1个月前 | Java · 性能优化 · Stream · Java教程 · Java Stream Spliterator 并行流 parallelStream Stream副作用
把 stream() 改成 parallelStream() 之前,先判断数据规模与单元素成本、Spliterator 拆分质量、状态型操作、顺序约束、共享副作用和归约契约。本文给出六道筛选、代码改造方法和同输入对照清单,避免并行后更慢或结果不稳定。405 收藏 -
用 Java NIO 扫描配置目录时,PathMatcher 的 glob 规则要和 Path 的相对层级保持一致。本文用 Files.walk、PathMatcher 和小型验收程序说明通配符、路径归一化、空匹配及资源关闭边界。403 收藏 -
Java Stream 中直接修改外部 List、Map 或计数器,会让并行执行出现数据竞争、结果不稳定或锁竞争。本文说明如何识别共享可变状态,并用 toList、groupingBy、reduce 和 Collector 改写。403 收藏 -
Java 虚拟线程的阻塞等待不等于长期占用载体。结合 JDK 版本区分卸载、固定限制与资源池竞争,并用同负载下的线程、连接等待、延迟和错误率判断改动,避免把承载优化当成容量扩张。401 收藏 -
Java String.indent(int) 可以逐行增加或移除多行文本的前导空白,并把结果行结束符统一为 LF。本文说明 n 的正负语义、制表符计数、CRLF 归一化,以及它与文本块 stripIndent 的使用边界。401 收藏 -
Java jmod 列出模块归档内容时使用 list 操作,它会输出 JMOD 中所有条目的名称。本文区分 list、describe、extract 的职责,并给出安全保存列举结果的命令写法。401 收藏 -
Java StructuredTaskScope 失败时,joiner 如何取消未完成子任务,FailedException、isCancelled 和 close 又分别说明什么?本文用 Java 25 预览 API 示例拆开传播链与关闭边界。400 收藏 -
Java 线程池准备退出时,close、shutdown 和 awaitTermination 到底怎么配合?本文用一个可验证的收尾流程说明停止接收任务、等待完成、记录未完成任务和超时兜底的边界。399 收藏 -
Java ExecutorService 的 shutdown 与 shutdownNow 不是温和版和强制版的简单替换。本文从排队任务、执行中任务和中断协作三个边界出发,给出两阶段退出代码与判断清单。399 收藏