以下类型定义有何不同之处?
<E extends Number>
和
<? extends Number>
祝好, Don
此版本:
<? extends Number>
可以出现在非泛型方法/类型中,基本上意味着“我不在乎这个类型是什么,只要它派生自Number
。我并不会真正使用这个类型,我只需要它是适当的。”
<E extends Number>
要求E是一个类型参数。它允许您做更多的事情(例如,在稍后创建ArrayList<E>
),但是当您不需要这些额外的类型参数时,这些参数可能会使事情变得更加复杂。