java 有界泛型类型定义

2022-09-02 01:42:34

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

<E extends Number>

<? extends Number>

干杯,唐


答案 1

此版本:

<? extends Number> 

可以出现在非泛型方法/类型中,它基本上意味着“我不在乎类型是什么,只要它派生自。我不会真正使用这种类型,我只是需要它合适。Number

此版本:

<E extends Number>

要求 E 作为类型参数。它允许您执行更多操作(例如,稍后创建一个),但是当您并不真正需要它们时,额外的类型参数可能会使事情变得更加复杂。ArrayList<E>


答案 2

推荐