java教程技术文章
-
Swing组件中不仅具有JFrame和JDialog这样的顶级窗口,还提供了一些面板组件(也称之为中间容器),这些面板组件不能单独存在,只能放置在顶级窗口容器中。其中最常见的面板组件有两种:JPanel和JScrollPane,接下来分别来介绍这两种面板组件。 1.JPanel JPanel面板组件452 收藏 -
用 Java NIO AsynchronousFileChannel 写文件时,连续提交回调可能让任务堆积。本文用批量写入、单飞窗口和可复现吞吐基线,说明如何控制并发、等待完成并验证结果。451 收藏 -
解释 Java record 作为 HashMap 键时查询失败的原因,覆盖 equals、hashCode、一致性约束、可变字段与嵌套对象的排查方法。449 收藏 -
批处理任务常常不是一次屏障就能解决:参与者会动态加入,也可能提前退出。本文用 Java Phaser 写一个三阶段批处理示例,核对 register、arrive、onAdvance 和 forceTermination 的职责与边界。449 收藏 -
用同一段 Java 线程实验复现 ReentrantReadWriteLock 非公平与公平策略下的写锁等待,解释读者持续到达时的排队边界,并给出可复查的选择方法。447 收藏 -
文章 · java教程 | 3天前 | Java · 并发与底层 · 反射调用 · java astype MethodHandles MethodHandle WrongMethodTypeException
Java MethodHandle.asType 会返回一个拥有新签名的适配句柄。本文用一个静态方法调用实验拆开参数转换、返回值转换、invokeExact 校验和 WrongMethodTypeException 的边界。446 收藏 -
文章 · java教程 | 2个月前 | 并发编程 · 生产实践 · Java教程 · JDK25 · 虚拟线程 · 虚拟线程 Java 25 JEP 505 Structured Concurrency StructuredTaskScope
从 Spring Boot 聚合接口超时治理出发,讲清 Java 25 Structured Concurrency 预览 API 的适用边界、取消语义、代码改造和上线检查。443 收藏 -
Java HashMap 的桶并不是碰撞一多就立刻变成红黑树。本文结合 TREEIFY_THRESHOLD、MIN_TREEIFY_CAPACITY、resize 和 putVal 说明树化条件、扩容优先级与读取路径。443 收藏 -
用 Java StructuredTaskScope 组织多个子任务,讲清部分成功收集、失败处理、关闭时机和资源回收的验收方法。437 收藏 -
Java 项目本地构建通过、CI 却失败,往往不是代码突然变坏,而是 JDK、Maven 依赖缓存和质量检查没有被流水线固定。本文用一个订单服务的构建场景,拆开版本矩阵、依赖缓存、测试门禁和失败通知的配置边界。434 收藏 -
网络中的计算机想要彼此通信,光有连接还不够,还得给每一台设备分配一个“身份标识”。有了这个标识,数据在传输时才能准确找到接收方,也能明确发送方是谁。在 TCP/IP 协议里,这个标识就是 IP 地址。它的作用很直接:唯一标识一台计算机。当前被广泛使用的版本是 IPv4,采用 4 个字节的二进制数来表432 收藏 -
GridLayout(网格布局管理器)会用横线和竖线把容器切分成 n 行 m 列、大小一致的网格,每个网格里都可以放置一个组件。组件加入容器后,会先落在第1行第1列(左上角)的位置,随后按照第1行从左到右的顺序依次排布;当前一行放满之后,再进入下一行,继续按从左到右的方式放置。它和 FlowLayo431 收藏 -
虚拟线程适合大量阻塞型任务,但它不会自动增加数据库连接等稀缺资源。本文从读者提问出发,说明虚拟线程不该再被线程池复用,连接池本身的并发边界,以及何时应使用 Semaphore。430 收藏 -
文章 · java教程 | 2个月前 | Java · 异步编程 · 后端开发 · CompletableFuture · 接口聚合 · java 结果合并 completablefuture 并行调用 超时兜底
页面接口经常需要同时查询用户、订单、优惠等多个服务。本文按完整工作流拆解 Java CompletableFuture 如何做并行调用、独立超时、异常兜底、统一 DTO 合并和最终检查。428 收藏 -
Java 25 的 StructuredTaskScope 仍是预览 API,适合把一次请求拆成多个并发子任务,再以结构化的 join、失败传播和超时边界收拢结果。本文用商品详情聚合场景拆开 open、fork、join、TimeoutException 和预览编译参数。428 收藏