栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

通用通配符类型不应在返回参数中使用

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

通用通配符类型不应在返回参数中使用

使用通配符类型(例如在方法正式参数中)的主要好处是为用户提供了灵活性,使其可以传递任何类型的

Collection
List
或任何实现Collection的东西(假设collection声明为
Collection<?>
)。您通常会发现自己在形式参数中使用通配符类型。

但理想情况下,应避免将它们用作方法的返回类型。因此,您将强制该方法的用户在调用方使用通配符类型,即使他们不想这样做也是如此。通过使用通配符类型,您是在说,嘿!此方法可以返回的任何类型

Collection
,因此,您的工作就是做这件事。你不应该那样做。最好使用有界类型参数。使用有界类型参数时,将根据您传递的类型或方法调用的目标类型来推断类型。

这是来自 有效Java项目28 的引用

不要将通配符类型用作返回类型。 与其给用户提供更多的灵活性,不如说是迫使他们在客户端代码中使用通配符类型。
正确使用的通配符类型对于类的用户几乎是不可见的。它们使方法接受应接受的参数,并拒绝应拒绝的参数。
如果类的用户必须考虑通配符类型,则类的API可能存在问题。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/437426.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号