如何直接调用泛型方法?

时间:2014-06-25 00:37:55

标签: java generics

这是我打电话的方法:

public static <T extends Something> Group<T> getGroup() { ... }

如果我想将结果存储在变量中,我会这样做:

Group<SomethingSubClass> group = StaticClass.getGroup();

如何在不将其存储在变量中的情况下调用该方法?

StaticClass.getGroup();

上面是我尝试的内容,但我不确定(大多数人认为从我的方法的方式来看是可能的)添加泛型类型T.

解决方案:

StaticClass.<SomethingSubClass>getGroup();

1 个答案:

答案 0 :(得分:1)

你不需要任何特别的东西。只需将其作为

调用即可
StaticClass.getGroup();

您只需忽略返回值即可。类型参数将推断为Something,这是您在方法中可以访问的内容。

您可以通过执行

指定实际类型参数
StaticClass.<SomeTypeThatExtendsSomething>getGroup();

但您不需要,因为您使用泛型类型的方法的唯一部分是您要丢弃的返回类型。