在 Java 中,泛型允许开发人员编写对不同数据类型进行操作的代码,而无需使用创建同一代码的多个版本。使用泛型时,了解使用
语法
Map<String, Class<? extends Serializable>> expected = null;
预期的映射可以保存表示任何实现 Serialized 的类或其任何子类的 Class 对象。
在提供的示例中:
Map<String, Class<java.util.Date>> result = null; assertThat(result, is(expected));
结果映射指定它只能保存 Date 类对象。检查结果类型时,assertThat 方法需要一个适合结果类型的 Matcher。然而,预期映射的类型(Matcher 将 assertThat 方法签名更改为 JUnit中assertThat方法的泛化旨在确保兼容的Matcher提供。但是,由于 Matcher 类不需要泛型类型,因此泛型可能显得多余。但是,它通过确保匹配器可以处理正在测试的结果的实际类型来提供类型安全。切换到
泛化assertThat方法
以上是何时以及为何在 Java 泛型中使用 ``?的详细内容。更多信息请关注PHP中文网其他相关文章!