首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >泛型Java方法的泛型类型能否用于强制参数类型?

泛型Java方法的泛型类型能否用于强制参数类型?
EN

Stack Overflow用户
提问于 2015-05-13 22:03:31
回答 4查看 4K关注 0票数 54

我想使用泛型类型来确保方法的参数具有相同的类型,如下所示:

public static <T> void x(T a, T b)

我假设传递给此方法的两个参数(a和b)必须始终属于同一类型。但令我惊讶的是,我能够将任何类型的参数(甚至是基本类型)传递给方法x,就好像T被擦除为Object一样,而不管传递的是什么参数。

到目前为止,我发现的唯一变通办法是像这样使用“扩展”:

public static <T, U extends T> void x(T a, U b)

但是,尽管我可以接受它,但它不是我想要的。

有没有办法使用泛型类型来强制一个方法的所有参数的类型?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30217236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档