【发布时间】:2014-08-14 11:50:02
【问题描述】:
有人要求我使用 "?extends" ,但要求我传递单个参数而不是列表。任何人都可以帮助我,我可以写出类似下面的方法。我猜我从泛型学了什么? extends 可以与集合对象一起使用,而不是单个对象。
public void verify(<? extends Account> account) {}
在方法中我需要检查传递了什么子类型,然后在另一个对象上发送适当的命令
任何帮助将不胜感激。
谢谢。
【问题讨论】:
-
相比
public void verify(Account account)有什么好处? (不,<? extends ...>不要求您使用集合,但我认为这与这里无关。) -
我要求只接受子类型,这就是为什么,我在 Eclipse 中尝试,使用时出现编译错误?扩展帐户。
-
您的意思是您不想接受
Account实例吗?因为<? extends Account>确实 无论如何都允许Account,所以你尝试的对你没有帮助。 -
好的,谢谢,那还有什么办法呢?
-
那么为什么你只想接受子类型而不是接受
Account?这真是一个奇怪的要求。你确定这就是你需要的吗?