java教程技术文章
-
CompletableFuture 的 completeOnTimeout 可以让调用方在时间预算耗尽后拿到备用值,但它不等于强制终止后台 supplier。本文给出可复用的超时包装方法,并说明 orTimeout、协作式取消、线程池与日志边界。298 收藏 -
用JVM Class Data Sharing生成可复用的JSA归档,覆盖classlist采集、-Xshare:dump、运行时命中日志,以及类表为空和归档失效的排查边界。320 收藏 -
Java StringTokenizer 的三参数构造器把 returnDelims 设为 true 后,分隔符会以独立 token 返回。本文说明内容与符号的遍历顺序、连续分隔符、Unicode code point、异常边界,以及何时改用 split 或正则表达式。318 收藏 -
Java 26 API 可按模块、包、类型逐层定位。文章以 Map、String 和 Connection 为例,说明完整类型名、模块导出与包名的区别,并提供不连接数据库的模块引用练习。427 收藏 -
StringJoiner.merge 合并的是来源对象去掉前后缀后的内部内容;本文用最小 Java 示例解释目标格式、来源分隔符和整体元素之间的边界,并说明何时应该改用逐个 add。391 收藏 -
讲清 Java Pattern 为什么会在重叠量词和失败分支下产生灾难性回溯,并用 possessive quantifier、atomic group 和输入边界给出可落地的改写与防护思路。185 收藏 -
使用 Java NIO FileChannel 的定位写入方法,把 ByteBuffer 写到指定字节偏移;同时处理部分写入、追加模式、重叠区域、文件锁与 force 落盘边界。346 收藏 -
文章 · java教程 | 5天前 | Java · 并发编程 · CompletableFuture · java completablefuture obtrudeException 异步异常恢复
讲清 Java CompletableFuture.obtrudeException 如何覆盖已完成 future 的后续读取结果,并用依赖阶段示例说明旧值与新异常可能并存的边界。161 收藏 -
Java InstantSource 可以把当前时间变成可注入依赖:生产使用 system,测试使用 fixed,未来或历史场景使用 offset,时间窗口使用 tick;需要时区语义时再转换为 Clock。258 收藏 -
文章 · java教程 | 5天前 | nio · Java教程 · 文件系统 · java 文件属性 nio Files.readAttributes BasicFileAttributes NOFOLLOW_LINKS
Java Files.readAttributes 可以一次读取文件类型、大小和时间属性。本文说明 BasicFileAttributes 的常用字段、符号链接默认跟随与 NOFOLLOW_LINKS 的区别,并区分 IOException 和 UnsupportedOperationException。243 收藏 -
并行 Stream 最容易出错的地方,是在 forEach 里直接修改外部 ArrayList、HashMap 或计数器。本文从共享可变状态出发,说明如何用 map、toList、groupingBy 和 groupingByConcurrent 组织结果,并解释什么时候顺序流反而更合适。268 收藏 -
Java StructuredTaskScope 的 close 必须由 scope owner 调用。本文说明关闭时如何取消未完成子任务、等待线程结束,以及如何用 try-with-resources 处理线程归属、中断响应和嵌套结构边界。220 收藏 -
Map.copyOf 明确拒绝 null 源映射、空键和空值。文章说明输入约束、过滤与默认值的语义选择,并用 HashMap 副本加只读包装保留空值,区分视图、浅拷贝与深度不可变。104 收藏 -
用 Maven toolchains 把项目需要的 JDK 从 Maven 运行环境中解耦:配置 toolchains.xml、声明匹配条件,并处理版本范围、vendor 和 CI 路径边界。458 收藏 -
Spring Boot 的 @ConfigurationProperties 可以把层级化配置绑定到类型安全的 Java 对象。本文用嵌套 POJO、List 和 Map 说明字段结构、可变集合初始化与常见绑定边界。396 收藏