java有界泛型定义

时间:2008-12-07 21:58:49

标签: java generics

以下类型定义之间有什么区别

<E extends Number>

<? extends Number>

干杯, 唐

1 个答案:

答案 0 :(得分:22)

此版本:

<? extends Number> 

可以出现在非泛型方法/类型中,它基本上意味着“我不关心类型是什么,只要它来自Number。我不打算真正使用类型,我只需要它是合适的。“

此版本:

<E extends Number>

要求E为类型参数。它允许你做更多的事情(例如,稍后创建一个ArrayList<E>),但额外的类型参数可以使事情变得更复杂,当你真的不需要它们时。