Java泛型何时需要而不是,切换是否有不利之处?

Java泛型何时需要而不是,切换是否有不利之处?,第1张

Java泛型何时需要而不是,切换是否有不利之处?

首先-我必须将你定向到http://www.angelikalanger.com/GenericsFAQ/JavaGenericsFAQ.html-她的工作非常出色。

基本思想是你使用

<T extends SomeClass>

当实际参数可以是

SomeClass
或它的任何子类型时。

在你的示例中

Map<String, Class<? extends Serializable>> expected = null;Map<String, Class<java.util.Date>> result = null;assertThat(result, is(expected));

你说的是

expected
可以包含代表任何实现的类的
Class
对象
Serializable
。你的结果图说它只能容纳
Date
类对象。

当你在结果传递,你设置T准确

Map
String
给Date类对象,这不匹配Map的String,以任何的
Serializable

要检查的一件事-确定要Class不要Date吗?一般而言,Stringto 的映射Class听起来并不是很有用(它可以保存的只是Date.class值而不是的实例Date)

至于泛化assertThat,其想法是该方法可以确保Matcher传入适合结果类型的a 。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5059050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存