java教程技术文章
-
用 PropertyChangeSupport 的按属性重载,只接收 name 属性的变化,并通过一个小型 Java Bean 说明注册、触发和移除监听器的完整写法。420 收藏 -
Java Introspector 默认会沿继承链分析 Bean。本文用 stopClass 截断父类和 Object 的属性来源,并给出 PropertyDescriptor 核对方法与边界清单。145 收藏 -
用 Introspector 取得 BeanInfo 并遍历 PropertyDescriptor,说明属性名、类型、读写方法与只读属性的处理,以及字段扫描、继承范围和业务筛选的区别。447 收藏 -
Java ImageReader 的 dispose 只负责释放 reader 自身资源,ImageInputStream 仍需由调用方关闭。本文用一段完整的 Java 读取示例说明两者的职责边界、清理顺序和异常路径。176 收藏 -
Java ImageReader 可以通过 ImageInputStream、setInput、getWidth 和 getHeight 查询图片尺寸,而不调用 read 创建整张 BufferedImage。本文说明首帧索引、元数据选项、插件缺失和资源释放边界。273 收藏 -
通过Java PrintService完整查询示例区分属性类别、支持范围、具体取值与最终组合,说明DocFlavor上下文、份数范围和多设备打印的查询记录策略。340 收藏 -
Java PrintService 可以列出打印服务支持的 DocFlavor,也可以判断单个文档格式是否可用。本文进一步说明如何检查文档格式与纸张等打印属性的组合约束。114 收藏 -
Java MidiSystem 枚举 MIDI 设备时,先用 getMidiDeviceInfo 获取设备信息目录,再读取名称、厂商、版本和描述,最后用 getMidiDevice 定位设备实例。本文给出空结果、能力筛选和 MidiUnavailableException 的处理边界。172 收藏 -
Java 可用 MidiSystem.getSequence 读取 MIDI 文件,再通过 Sequence.getTracks 遍历轨道和事件。本文给出完整读取示例,区分事件数量、消息类型与 tick,并说明常见错误。489 收藏 -
Java AudioSystem 读取音频帧长度时,要先区分 AudioFileFormat 和 AudioInputStream。本文按文件、URL、InputStream 三种入口说明 getFrameLength 的用法,并处理 mark/reset、未知长度、异常格式和资源关闭。302 收藏 -
Java AudioSystem 判断音频转换能力时,应区分目标编码、完整 AudioFormat 和目标文件类型三层问题。本文说明 isConversionSupported、getTargetEncodings、getTargetFormats 的用法,并梳理输入解析、转换流和文件写出的异常边界。208 收藏 -
解释Java ZIP条目写入与文件系统关闭的不同边界,用try-with-resources安排成功通知,并区分归档更新完成与介质持久化保证。464 收藏 -
Java CollationKey 适合在同一批字符串需要反复排序时缓存比较键。本文给出绑定原文、固定 Collator 规则和缓存失效边界的写法,并说明何时直接 compare 更快。339 收藏 -
Java ChoiceFormat 中 # 包含当前下限,< 排除当前下限。本文用相邻区间、数组构造和 MessageFormat 示例说明如何处理 0、1、1 以上及其他临界值。203 收藏 -
ChoiceFormat 用升序 limits 把数字映射到分段提示文本。本文说明 # 与 < 的边界差异、数组构造、MessageFormat 组合、5 个边界样例和线程安全注意事项。159 收藏